diff --git a/composer.json b/composer.json index 711dd619a2a3be70e2e101f149a3b6e2a202a367..7d460ed48638948a8a52ab80742d0a08ea362b93 100644 --- a/composer.json +++ b/composer.json @@ -10,15 +10,15 @@ ], "require": { "sdboyer/gliph": "0.1.*", - "symfony/class-loader": "2.4.*", - "symfony/dependency-injection": "2.4.*", - "symfony/event-dispatcher": "2.4.*", - "symfony/http-foundation": "2.4.*", - "symfony/http-kernel": "2.4.*", - "symfony/routing": "2.4.*", - "symfony/serializer": "2.4.*", - "symfony/validator": "2.4.*", - "symfony/yaml": "2.4.*", + "symfony/class-loader": "2.3.*", + "symfony/dependency-injection": "2.3.*", + "symfony/event-dispatcher": "2.3.*", + "symfony/http-foundation": "2.3.*", + "symfony/http-kernel": "2.3.*", + "symfony/routing": "2.3.*", + "symfony/serializer": "2.3.*", + "symfony/validator": "2.3.*", + "symfony/yaml": "2.3.*", "twig/twig": "1.12.*", "doctrine/common": "dev-bmaster#99b44f52a1b844f9c4c34e618b160664d5c27daf", "doctrine/annotations": "dev-master#463d926a8dcc49271cb7db5a08364a70ed6e3cd3", diff --git a/composer.lock b/composer.lock index 8879c53fda820441eaea8b0ee14ea81561c53951..185081677568408c7d267235f239abfb078259f2 100644 --- a/composer.lock +++ b/composer.lock @@ -3,7 +3,7 @@ "This file locks the dependencies of your project to a known state", "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file" ], - "hash": "b3a05b2f0a069c6d34b65b604a216a92", + "hash": "06006c1512fb829fcdb498b7e515901d", "packages": [ { "name": "doctrine/annotations", @@ -1225,17 +1225,17 @@ }, { "name": "symfony/class-loader", - "version": "v2.4.1", + "version": "v2.3.4", "target-dir": "Symfony/Component/ClassLoader", "source": { "type": "git", "url": "https://github.com/symfony/ClassLoader.git", - "reference": "6a2ebedbc780130f07b3a15363743d08eb46820c" + "reference": "622d370a07321329f5259c6f96d5c636104ad46b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/6a2ebedbc780130f07b3a15363743d08eb46820c", - "reference": "6a2ebedbc780130f07b3a15363743d08eb46820c", + "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/622d370a07321329f5259c6f96d5c636104ad46b", + "reference": "622d370a07321329f5259c6f96d5c636104ad46b", "shasum": "" }, "require": { @@ -1247,7 +1247,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1271,7 +1271,7 @@ ], "description": "Symfony ClassLoader Component", "homepage": "http://symfony.com", - "time": "2013-11-26 16:40:27" + "time": "2013-08-13 20:18:00" }, { "name": "symfony/debug", @@ -1331,17 +1331,17 @@ }, { "name": "symfony/dependency-injection", - "version": "v2.4.1", + "version": "v2.3.4", "target-dir": "Symfony/Component/DependencyInjection", "source": { "type": "git", "url": "https://github.com/symfony/DependencyInjection.git", - "reference": "7e5bde3a607dde1f8ddef5180759068ad53d259c" + "reference": "3678aa969e5bfeb8515a1f3047c63e8104723f5c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/7e5bde3a607dde1f8ddef5180759068ad53d259c", - "reference": "7e5bde3a607dde1f8ddef5180759068ad53d259c", + "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/3678aa969e5bfeb8515a1f3047c63e8104723f5c", + "reference": "3678aa969e5bfeb8515a1f3047c63e8104723f5c", "shasum": "" }, "require": { @@ -1349,7 +1349,6 @@ }, "require-dev": { "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", "symfony/yaml": "~2.0" }, "suggest": { @@ -1360,7 +1359,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1384,21 +1383,21 @@ ], "description": "Symfony DependencyInjection Component", "homepage": "http://symfony.com", - "time": "2014-01-01 09:02:49" + "time": "2013-07-25 17:13:25" }, { "name": "symfony/event-dispatcher", - "version": "v2.4.1", + "version": "v2.3.4", "target-dir": "Symfony/Component/EventDispatcher", "source": { "type": "git", "url": "https://github.com/symfony/EventDispatcher.git", - "reference": "e3ba42f6a70554ed05749e61b829550f6ac33601" + "reference": "41c9826457c65fa3cf746f214985b7ca9cba42f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/e3ba42f6a70554ed05749e61b829550f6ac33601", - "reference": "e3ba42f6a70554ed05749e61b829550f6ac33601", + "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/41c9826457c65fa3cf746f214985b7ca9cba42f8", + "reference": "41c9826457c65fa3cf746f214985b7ca9cba42f8", "shasum": "" }, "require": { @@ -1414,7 +1413,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1438,21 +1437,21 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "http://symfony.com", - "time": "2013-12-28 08:12:03" + "time": "2013-07-21 12:12:18" }, { "name": "symfony/http-foundation", - "version": "v2.4.1", + "version": "v2.3.4", "target-dir": "Symfony/Component/HttpFoundation", "source": { "type": "git", "url": "https://github.com/symfony/HttpFoundation.git", - "reference": "6c6b8a7bcd7e2cc920cd6acace563fdbf121d844" + "reference": "fdf130fe65457aedbc4639a22f4ef9d3be5c002c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/6c6b8a7bcd7e2cc920cd6acace563fdbf121d844", - "reference": "6c6b8a7bcd7e2cc920cd6acace563fdbf121d844", + "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/fdf130fe65457aedbc4639a22f4ef9d3be5c002c", + "reference": "fdf130fe65457aedbc4639a22f4ef9d3be5c002c", "shasum": "" }, "require": { @@ -1461,7 +1460,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1488,21 +1487,21 @@ ], "description": "Symfony HttpFoundation Component", "homepage": "http://symfony.com", - "time": "2014-01-05 02:10:50" + "time": "2013-08-26 05:49:51" }, { "name": "symfony/http-kernel", - "version": "v2.4.1", + "version": "v2.3.4", "target-dir": "Symfony/Component/HttpKernel", "source": { "type": "git", "url": "https://github.com/symfony/HttpKernel.git", - "reference": "0605eedeb52c4d3a3144128d8336395a57be60d4" + "reference": "9d35da40f07bbe7a4f8dfbc41555d2b69de674bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/0605eedeb52c4d3a3144128d8336395a57be60d4", - "reference": "0605eedeb52c4d3a3144128d8336395a57be60d4", + "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/9d35da40f07bbe7a4f8dfbc41555d2b69de674bf", + "reference": "9d35da40f07bbe7a4f8dfbc41555d2b69de674bf", "shasum": "" }, "require": { @@ -1510,7 +1509,7 @@ "psr/log": "~1.0", "symfony/debug": "~2.3", "symfony/event-dispatcher": "~2.1", - "symfony/http-foundation": "~2.4" + "symfony/http-foundation": "~2.2" }, "require-dev": { "symfony/browser-kit": "~2.2", @@ -1535,7 +1534,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1559,7 +1558,7 @@ ], "description": "Symfony HttpKernel Component", "homepage": "http://symfony.com", - "time": "2014-01-05 02:12:11" + "time": "2013-08-27 08:58:24" }, { "name": "symfony/process", @@ -1608,99 +1607,39 @@ "homepage": "http://symfony.com", "time": "2013-08-22 06:42:25" }, - { - "name": "symfony/property-access", - "version": "v2.4.1", - "target-dir": "Symfony/Component/PropertyAccess", - "source": { - "type": "git", - "url": "https://github.com/symfony/PropertyAccess.git", - "reference": "274951234150e303c83099a2429be6be35629fe9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/PropertyAccess/zipball/274951234150e303c83099a2429be6be35629fe9", - "reference": "274951234150e303c83099a2429be6be35629fe9", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.4-dev" - } - }, - "autoload": { - "psr-0": { - "Symfony\\Component\\PropertyAccess\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony PropertyAccess Component", - "homepage": "http://symfony.com", - "keywords": [ - "access", - "array", - "extraction", - "index", - "injection", - "object", - "property", - "property path", - "reflection" - ], - "time": "2013-11-13 21:30:16" - }, { "name": "symfony/routing", - "version": "v2.4.1", + "version": "v2.3.4", "target-dir": "Symfony/Component/Routing", "source": { "type": "git", "url": "https://github.com/symfony/Routing.git", - "reference": "4abfb500aab8be458c9e3a227ea56b190584f78a" + "reference": "69af3f07dbf3ae93dd513dbc373f561cb2e7f143" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Routing/zipball/4abfb500aab8be458c9e3a227ea56b190584f78a", - "reference": "4abfb500aab8be458c9e3a227ea56b190584f78a", + "url": "https://api.github.com/repos/symfony/Routing/zipball/69af3f07dbf3ae93dd513dbc373f561cb2e7f143", + "reference": "69af3f07dbf3ae93dd513dbc373f561cb2e7f143", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "doctrine/annotations": "~1.0", + "doctrine/common": "~2.2", "psr/log": "~1.0", "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", "symfony/yaml": "~2.0" }, "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" + "doctrine/common": "", + "symfony/config": "", + "symfony/yaml": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1724,27 +1663,21 @@ ], "description": "Symfony Routing Component", "homepage": "http://symfony.com", - "keywords": [ - "router", - "routing", - "uri", - "url" - ], - "time": "2014-01-05 02:10:50" + "time": "2013-08-23 15:14:07" }, { "name": "symfony/serializer", - "version": "v2.4.1", + "version": "v2.3.4", "target-dir": "Symfony/Component/Serializer", "source": { "type": "git", "url": "https://github.com/symfony/Serializer.git", - "reference": "60c54346958604379392672a3a998650a169a7f4" + "reference": "457ba76395955926a67ea692957b0872dead5278" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Serializer/zipball/60c54346958604379392672a3a998650a169a7f4", - "reference": "60c54346958604379392672a3a998650a169a7f4", + "url": "https://api.github.com/repos/symfony/Serializer/zipball/457ba76395955926a67ea692957b0872dead5278", + "reference": "457ba76395955926a67ea692957b0872dead5278", "shasum": "" }, "require": { @@ -1753,7 +1686,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1777,7 +1710,7 @@ ], "description": "Symfony Serializer Component", "homepage": "http://symfony.com", - "time": "2014-01-01 08:14:50" + "time": "2013-07-21 12:12:18" }, { "name": "symfony/translation", @@ -1836,35 +1769,31 @@ }, { "name": "symfony/validator", - "version": "v2.4.1", + "version": "v2.3.4", "target-dir": "Symfony/Component/Validator", "source": { "type": "git", "url": "https://github.com/symfony/Validator.git", - "reference": "7ea4e53f8d68bf3ae9cca28765d49d7930618730" + "reference": "8f6f6be47fb8e1179cd225b1f949630e26221e42" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Validator/zipball/7ea4e53f8d68bf3ae9cca28765d49d7930618730", - "reference": "7ea4e53f8d68bf3ae9cca28765d49d7930618730", + "url": "https://api.github.com/repos/symfony/Validator/zipball/8f6f6be47fb8e1179cd225b1f949630e26221e42", + "reference": "8f6f6be47fb8e1179cd225b1f949630e26221e42", "shasum": "" }, "require": { "php": ">=5.3.3", - "symfony/property-access": "~2.2", "symfony/translation": "~2.0" }, "require-dev": { - "doctrine/annotations": "~1.0", - "doctrine/cache": "~1.0", "symfony/config": "~2.2", "symfony/http-foundation": "~2.1", "symfony/intl": "~2.3", "symfony/yaml": "~2.0" }, "suggest": { - "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.", - "doctrine/cache": "For using the default cached annotation reader", + "doctrine/common": "", "symfony/config": "", "symfony/http-foundation": "", "symfony/intl": "", @@ -1873,7 +1802,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1897,21 +1826,21 @@ ], "description": "Symfony Validator Component", "homepage": "http://symfony.com", - "time": "2014-01-01 08:14:50" + "time": "2013-08-24 15:26:22" }, { "name": "symfony/yaml", - "version": "v2.4.1", + "version": "v2.3.4", "target-dir": "Symfony/Component/Yaml", "source": { "type": "git", "url": "https://github.com/symfony/Yaml.git", - "reference": "4e1a237fc48145fae114b96458d799746ad89aa0" + "reference": "5a279f1b5f5e1045a6c432354d9ea727ff3a9847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/4e1a237fc48145fae114b96458d799746ad89aa0", - "reference": "4e1a237fc48145fae114b96458d799746ad89aa0", + "url": "https://api.github.com/repos/symfony/Yaml/zipball/5a279f1b5f5e1045a6c432354d9ea727ff3a9847", + "reference": "5a279f1b5f5e1045a6c432354d9ea727ff3a9847", "shasum": "" }, "require": { @@ -1920,7 +1849,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -1944,7 +1873,7 @@ ], "description": "Symfony Yaml Component", "homepage": "http://symfony.com", - "time": "2013-12-28 08:12:03" + "time": "2013-08-24 15:26:22" }, { "name": "twig/twig", diff --git a/core/modules/language/lib/Drupal/language/HttpKernel/PathProcessorLanguage.php b/core/modules/language/lib/Drupal/language/HttpKernel/PathProcessorLanguage.php index 589e0b635bd4800a471701a87aafa9fd4306421c..d212c7b2896d0b584ecb28d212260ddecf2aa218 100644 --- a/core/modules/language/lib/Drupal/language/HttpKernel/PathProcessorLanguage.php +++ b/core/modules/language/lib/Drupal/language/HttpKernel/PathProcessorLanguage.php @@ -143,7 +143,7 @@ public function processOutbound($path, &$options = array(), Request $request = N list( , $port) = explode(':', $normalized_base_url); $options['base_url'] .= ':' . $port; } - elseif (($url_scheme == 'http' && $port != 80) || ($url_scheme == 'https' && $port != 443)) { + elseif ($port != 80) { $options['base_url'] .= ':' . $port; } diff --git a/core/modules/language/lib/Drupal/language/Tests/LanguageUrlRewritingTest.php b/core/modules/language/lib/Drupal/language/Tests/LanguageUrlRewritingTest.php index e785bd8efbefc023614035716f4c0b52d84ddafc..07ee9a9762f32d8b2643496fee1374fb4245c1fc 100644 --- a/core/modules/language/lib/Drupal/language/Tests/LanguageUrlRewritingTest.php +++ b/core/modules/language/lib/Drupal/language/Tests/LanguageUrlRewritingTest.php @@ -125,9 +125,7 @@ function testDomainNameNegotiationPort() { // URLs as well. $index_php = strpos(url('', array('absolute' => TRUE)), 'index.php') !== FALSE; - $request = Request::createFromGlobals(); - $server = $request->server->all(); - $request = $this->prepareRequestForGenerator(TRUE, array('HTTP_HOST' => $server['HTTP_HOST'] . ':88')); + $request = $this->prepareRequestForGenerator(TRUE, array('SERVER_PORT' => '88')); // Create an absolute French link. $language = language_load('fr'); diff --git a/core/vendor/autoload.php b/core/vendor/autoload.php index 6f10559d6e606de040749a7cec0be4c0b502f5c7..aea9b1796da5457119c19a9da0dbca822f121851 100644 --- a/core/vendor/autoload.php +++ b/core/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer' . '/autoload_real.php'; -return ComposerAutoloaderInit3a54ed71987dfc252758278dbd0c6099::getLoader(); +return ComposerAutoloaderInit50432d86c534be2ddddf85d27e021721::getLoader(); diff --git a/core/vendor/composer/autoload_namespaces.php b/core/vendor/composer/autoload_namespaces.php index 83fb6eda09c2f1f77cc21467eb141d54660e5165..f6dbb7cc1c34109b40d28fe9e88a9cd3ab57d045 100644 --- a/core/vendor/composer/autoload_namespaces.php +++ b/core/vendor/composer/autoload_namespaces.php @@ -15,7 +15,6 @@ 'Symfony\\Component\\Translation\\' => array($vendorDir . '/symfony/translation'), 'Symfony\\Component\\Serializer\\' => array($vendorDir . '/symfony/serializer'), 'Symfony\\Component\\Routing\\' => array($vendorDir . '/symfony/routing'), - 'Symfony\\Component\\PropertyAccess\\' => array($vendorDir . '/symfony/property-access'), 'Symfony\\Component\\Process\\' => array($vendorDir . '/symfony/process'), 'Symfony\\Component\\HttpKernel\\' => array($vendorDir . '/symfony/http-kernel'), 'Symfony\\Component\\HttpFoundation\\' => array($vendorDir . '/symfony/http-foundation'), diff --git a/core/vendor/composer/autoload_real.php b/core/vendor/composer/autoload_real.php index 0d236cfeb6c6d117217d72f29d17ef8798ab208b..035394bca571811271567a019de8b40b2c9141c2 100644 --- a/core/vendor/composer/autoload_real.php +++ b/core/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInit3a54ed71987dfc252758278dbd0c6099 +class ComposerAutoloaderInit50432d86c534be2ddddf85d27e021721 { private static $loader; @@ -19,9 +19,9 @@ public static function getLoader() return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInit3a54ed71987dfc252758278dbd0c6099', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit50432d86c534be2ddddf85d27e021721', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInit3a54ed71987dfc252758278dbd0c6099', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit50432d86c534be2ddddf85d27e021721', 'loadClassLoader')); $vendorDir = dirname(__DIR__); $baseDir = dirname(dirname($vendorDir)); diff --git a/core/vendor/composer/installed.json b/core/vendor/composer/installed.json index eb44290b16dc0853e103d6fd7dd7d8850f770d49..51c9889d13949d66313feda89daa3db1c32f6dfe 100644 --- a/core/vendor/composer/installed.json +++ b/core/vendor/composer/installed.json @@ -1139,34 +1139,28 @@ ] }, { - "name": "symfony/debug", + "name": "symfony/class-loader", "version": "v2.3.4", "version_normalized": "2.3.4.0", - "target-dir": "Symfony/Component/Debug", + "target-dir": "Symfony/Component/ClassLoader", "source": { "type": "git", - "url": "https://github.com/symfony/Debug.git", - "reference": "729f6d19cfc401c4942e43fcc1059103bd6df130" + "url": "https://github.com/symfony/ClassLoader.git", + "reference": "622d370a07321329f5259c6f96d5c636104ad46b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Debug/zipball/729f6d19cfc401c4942e43fcc1059103bd6df130", - "reference": "729f6d19cfc401c4942e43fcc1059103bd6df130", + "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/622d370a07321329f5259c6f96d5c636104ad46b", + "reference": "622d370a07321329f5259c6f96d5c636104ad46b", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "symfony/http-foundation": "~2.1", - "symfony/http-kernel": "~2.1" - }, - "suggest": { - "symfony/class-loader": "", - "symfony/http-foundation": "", - "symfony/http-kernel": "" + "symfony/finder": "~2.0" }, - "time": "2013-08-08 14:16:10", + "time": "2013-08-13 20:18:00", "type": "library", "extra": { "branch-alias": { @@ -1176,7 +1170,7 @@ "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\Debug\\": "" + "Symfony\\Component\\ClassLoader\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1193,37 +1187,38 @@ "homepage": "http://symfony.com/contributors" } ], - "description": "Symfony Debug Component", + "description": "Symfony ClassLoader Component", "homepage": "http://symfony.com" }, { - "name": "symfony/translation", + "name": "symfony/dependency-injection", "version": "v2.3.4", "version_normalized": "2.3.4.0", - "target-dir": "Symfony/Component/Translation", + "target-dir": "Symfony/Component/DependencyInjection", "source": { "type": "git", - "url": "https://github.com/symfony/Translation.git", - "reference": "65f888291f0896ad492f9abc6dc05c998373aded" + "url": "https://github.com/symfony/DependencyInjection.git", + "reference": "3678aa969e5bfeb8515a1f3047c63e8104723f5c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Translation/zipball/65f888291f0896ad492f9abc6dc05c998373aded", - "reference": "65f888291f0896ad492f9abc6dc05c998373aded", + "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/3678aa969e5bfeb8515a1f3047c63e8104723f5c", + "reference": "3678aa969e5bfeb8515a1f3047c63e8104723f5c", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "symfony/config": "~2.0", - "symfony/yaml": "~2.2" + "symfony/config": "~2.2", + "symfony/yaml": "~2.0" }, "suggest": { "symfony/config": "", + "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", "symfony/yaml": "" }, - "time": "2013-08-26 05:49:51", + "time": "2013-07-25 17:13:25", "type": "library", "extra": { "branch-alias": { @@ -1233,7 +1228,7 @@ "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\Translation\\": "" + "Symfony\\Component\\DependencyInjection\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1250,29 +1245,38 @@ "homepage": "http://symfony.com/contributors" } ], - "description": "Symfony Translation Component", + "description": "Symfony DependencyInjection Component", "homepage": "http://symfony.com" }, { - "name": "symfony/process", + "name": "symfony/debug", "version": "v2.3.4", "version_normalized": "2.3.4.0", - "target-dir": "Symfony/Component/Process", + "target-dir": "Symfony/Component/Debug", "source": { "type": "git", - "url": "https://github.com/symfony/Process.git", - "reference": "1e91553e1cedd0b8fb1da6ea4f89b02e21713d5b" + "url": "https://github.com/symfony/Debug.git", + "reference": "729f6d19cfc401c4942e43fcc1059103bd6df130" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Process/zipball/1e91553e1cedd0b8fb1da6ea4f89b02e21713d5b", - "reference": "1e91553e1cedd0b8fb1da6ea4f89b02e21713d5b", + "url": "https://api.github.com/repos/symfony/Debug/zipball/729f6d19cfc401c4942e43fcc1059103bd6df130", + "reference": "729f6d19cfc401c4942e43fcc1059103bd6df130", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "time": "2013-08-22 06:42:25", + "require-dev": { + "symfony/http-foundation": "~2.1", + "symfony/http-kernel": "~2.1" + }, + "suggest": { + "symfony/class-loader": "", + "symfony/http-foundation": "", + "symfony/http-kernel": "" + }, + "time": "2013-08-08 14:16:10", "type": "library", "extra": { "branch-alias": { @@ -1282,7 +1286,7 @@ "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\Process\\": "" + "Symfony\\Component\\Debug\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1299,34 +1303,43 @@ "homepage": "http://symfony.com/contributors" } ], - "description": "Symfony Process Component", + "description": "Symfony Debug Component", "homepage": "http://symfony.com" }, { - "name": "sdboyer/gliph", - "version": "0.1.4", - "version_normalized": "0.1.4.0", + "name": "symfony/http-foundation", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "target-dir": "Symfony/Component/HttpFoundation", "source": { "type": "git", - "url": "https://github.com/sdboyer/gliph.git", - "reference": "aad932ef7d808105341cc9a36538e9fe2cb5ee82" + "url": "https://github.com/symfony/HttpFoundation.git", + "reference": "fdf130fe65457aedbc4639a22f4ef9d3be5c002c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sdboyer/gliph/zipball/aad932ef7d808105341cc9a36538e9fe2cb5ee82", - "reference": "aad932ef7d808105341cc9a36538e9fe2cb5ee82", + "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/fdf130fe65457aedbc4639a22f4ef9d3be5c002c", + "reference": "fdf130fe65457aedbc4639a22f4ef9d3be5c002c", "shasum": "" }, "require": { - "php": ">=5.3" + "php": ">=5.3.3" }, - "time": "2013-09-27 01:15:21", + "time": "2013-08-26 05:49:51", "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, "installation-source": "dist", "autoload": { "psr-0": { - "Gliph": "src/" - } + "Symfony\\Component\\HttpFoundation\\": "" + }, + "classmap": [ + "Symfony/Component/HttpFoundation/Resources/stubs" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1334,61 +1347,54 @@ ], "authors": [ { - "name": "Sam Boyer", - "email": "tech@samboyer.org" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" } ], - "description": "A graph library for PHP.", - "homepage": "http://github.com/sdboyer/gliph", - "keywords": [ - "gliph", - "graph", - "library", - "php", - "spl" - ] + "description": "Symfony HttpFoundation Component", + "homepage": "http://symfony.com" }, { - "name": "symfony-cmf/routing", - "version": "1.1.0", - "version_normalized": "1.1.0.0", - "target-dir": "Symfony/Cmf/Component/Routing", + "name": "symfony/event-dispatcher", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "target-dir": "Symfony/Component/EventDispatcher", "source": { "type": "git", - "url": "https://github.com/symfony-cmf/Routing.git", - "reference": "9f8607950cbf888ec678713a35f3d0088857c85f" + "url": "https://github.com/symfony/EventDispatcher.git", + "reference": "41c9826457c65fa3cf746f214985b7ca9cba42f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/9f8607950cbf888ec678713a35f3d0088857c85f", - "reference": "9f8607950cbf888ec678713a35f3d0088857c85f", + "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/41c9826457c65fa3cf746f214985b7ca9cba42f8", + "reference": "41c9826457c65fa3cf746f214985b7ca9cba42f8", "shasum": "" }, "require": { - "php": ">=5.3.3", - "psr/log": "~1.0", - "symfony/http-kernel": "~2.2", - "symfony/routing": "~2.2" + "php": ">=5.3.3" }, "require-dev": { - "symfony/config": "~2.2", - "symfony/dependency-injection": "~2.0", - "symfony/event-dispatcher": "~2.1" + "symfony/dependency-injection": "~2.0" }, "suggest": { - "symfony/event-dispatcher": "DynamicRouter can optionally trigger an event at the start of matching. Minimal version ~2.1" + "symfony/dependency-injection": "", + "symfony/http-kernel": "" }, - "time": "2013-10-14 15:32:46", + "time": "2013-07-21 12:12:18", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "2.3-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Cmf\\Component\\Routing": "" + "Symfony\\Component\\EventDispatcher\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1397,97 +1403,131 @@ ], "authors": [ { - "name": "Symfony CMF Community", - "homepage": "https://github.com/symfony-cmf/Routing/contributors" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" } ], - "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers", - "homepage": "http://cmf.symfony.com", - "keywords": [ - "database", - "routing" - ] + "description": "Symfony EventDispatcher Component", + "homepage": "http://symfony.com" }, { - "name": "phpunit/php-file-iterator", - "version": "1.3.4", - "version_normalized": "1.3.4.0", + "name": "symfony/http-kernel", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "target-dir": "Symfony/Component/HttpKernel", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb" + "url": "https://github.com/symfony/HttpKernel.git", + "reference": "9d35da40f07bbe7a4f8dfbc41555d2b69de674bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/acd690379117b042d1c8af1fafd61bde001bf6bb", - "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb", + "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/9d35da40f07bbe7a4f8dfbc41555d2b69de674bf", + "reference": "9d35da40f07bbe7a4f8dfbc41555d2b69de674bf", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.3", + "psr/log": "~1.0", + "symfony/debug": "~2.3", + "symfony/event-dispatcher": "~2.1", + "symfony/http-foundation": "~2.2" }, - "time": "2013-10-10 15:34:57", + "require-dev": { + "symfony/browser-kit": "~2.2", + "symfony/class-loader": "~2.1", + "symfony/config": "~2.0", + "symfony/console": "~2.2", + "symfony/dependency-injection": "~2.0", + "symfony/finder": "~2.0", + "symfony/process": "~2.0", + "symfony/routing": "~2.2", + "symfony/stopwatch": "~2.2", + "symfony/templating": "~2.2" + }, + "suggest": { + "symfony/browser-kit": "", + "symfony/class-loader": "", + "symfony/config": "", + "symfony/console": "", + "symfony/dependency-injection": "", + "symfony/finder": "" + }, + "time": "2013-08-27 08:58:24", "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, "installation-source": "dist", "autoload": { - "classmap": [ - "File/" - ] + "psr-0": { + "Symfony\\Component\\HttpKernel\\": "" + } }, "notification-url": "https://packagist.org/downloads/", - "include-path": [ - "" - ], "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": "http://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 HttpKernel Component", + "homepage": "http://symfony.com" }, { - "name": "doctrine/annotations", - "version": "dev-master", - "version_normalized": "9999999-dev", + "name": "symfony/routing", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "target-dir": "Symfony/Component/Routing", "source": { "type": "git", - "url": "https://github.com/doctrine/annotations.git", - "reference": "463d926a8dcc49271cb7db5a08364a70ed6e3cd3" + "url": "https://github.com/symfony/Routing.git", + "reference": "69af3f07dbf3ae93dd513dbc373f561cb2e7f143" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/463d926a8dcc49271cb7db5a08364a70ed6e3cd3", - "reference": "463d926a8dcc49271cb7db5a08364a70ed6e3cd3", + "url": "https://api.github.com/repos/symfony/Routing/zipball/69af3f07dbf3ae93dd513dbc373f561cb2e7f143", + "reference": "69af3f07dbf3ae93dd513dbc373f561cb2e7f143", "shasum": "" }, "require": { - "doctrine/lexer": "1.*", - "php": ">=5.3.2" + "php": ">=5.3.3" }, "require-dev": { - "doctrine/cache": "1.*" + "doctrine/common": "~2.2", + "psr/log": "~1.0", + "symfony/config": "~2.2", + "symfony/yaml": "~2.0" }, - "time": "2013-11-19 05:59:59", + "suggest": { + "doctrine/common": "", + "symfony/config": "", + "symfony/yaml": "" + }, + "time": "2013-08-23 15:14:07", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "2.3-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Doctrine\\Common\\Annotations\\": "lib/" + "Symfony\\Component\\Routing\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1496,157 +1536,104 @@ ], "authors": [ { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com", - "homepage": "http://www.jwage.com/", - "role": "Creator" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com", - "homepage": "http://www.instaclick.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" }, { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com", - "homepage": "http://jmsyst.com", - "role": "Developer of wrapped JMSSerializerBundle" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" } ], - "description": "Docblock Annotations Parser", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "annotations", - "docblock", - "parser" - ] + "description": "Symfony Routing Component", + "homepage": "http://symfony.com" }, { - "name": "doctrine/common", - "version": "dev-bmaster", - "version_normalized": "dev-bmaster", + "name": "symfony/serializer", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "target-dir": "Symfony/Component/Serializer", "source": { "type": "git", - "url": "https://github.com/dawehner/common.git", - "reference": "99b44f52a1b844f9c4c34e618b160664d5c27daf" + "url": "https://github.com/symfony/Serializer.git", + "reference": "457ba76395955926a67ea692957b0872dead5278" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dawehner/common/zipball/99b44f52a1b844f9c4c34e618b160664d5c27daf", - "reference": "99b44f52a1b844f9c4c34e618b160664d5c27daf", + "url": "https://api.github.com/repos/symfony/Serializer/zipball/457ba76395955926a67ea692957b0872dead5278", + "reference": "457ba76395955926a67ea692957b0872dead5278", "shasum": "" }, - "archive": { - "exclude": [ - "!vendor", - "tests", - "*phpunit.xml", - ".travis.yml", - "build.xml", - "build.properties", - "composer.phar" - ] - }, "require": { - "doctrine/annotations": "1.*", - "doctrine/cache": "1.*", - "doctrine/collections": "1.*", - "doctrine/inflector": "1.*", - "doctrine/lexer": "1.*", - "php": ">=5.3.2" + "php": ">=5.3.3" }, - "time": "2013-12-12 18:37:37", + "time": "2013-07-21 12:12:18", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5.x-dev" + "dev-master": "2.3-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Doctrine\\Common\\": "lib/" + "Symfony\\Component\\Serializer\\": "" } }, + "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "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": "http://symfony.com/contributors" } ], - "description": "Common Library for Doctrine projects", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "annotations", - "collections", - "eventmanager", - "persistence", - "spl" - ], - "support": { - "source": "https://github.com/dawehner/common/tree/bmaster" - } + "description": "Symfony Serializer Component", + "homepage": "http://symfony.com" }, { - "name": "symfony/class-loader", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/ClassLoader", + "name": "symfony/translation", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "target-dir": "Symfony/Component/Translation", "source": { "type": "git", - "url": "https://github.com/symfony/ClassLoader.git", - "reference": "6a2ebedbc780130f07b3a15363743d08eb46820c" + "url": "https://github.com/symfony/Translation.git", + "reference": "65f888291f0896ad492f9abc6dc05c998373aded" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/6a2ebedbc780130f07b3a15363743d08eb46820c", - "reference": "6a2ebedbc780130f07b3a15363743d08eb46820c", + "url": "https://api.github.com/repos/symfony/Translation/zipball/65f888291f0896ad492f9abc6dc05c998373aded", + "reference": "65f888291f0896ad492f9abc6dc05c998373aded", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "symfony/finder": "~2.0" + "symfony/config": "~2.0", + "symfony/yaml": "~2.2" + }, + "suggest": { + "symfony/config": "", + "symfony/yaml": "" }, - "time": "2013-11-26 16:40:27", + "time": "2013-08-26 05:49:51", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\ClassLoader\\": "" + "Symfony\\Component\\Translation\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1663,49 +1650,53 @@ "homepage": "http://symfony.com/contributors" } ], - "description": "Symfony ClassLoader Component", + "description": "Symfony Translation Component", "homepage": "http://symfony.com" }, { - "name": "symfony/dependency-injection", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/DependencyInjection", + "name": "symfony/validator", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "target-dir": "Symfony/Component/Validator", "source": { "type": "git", - "url": "https://github.com/symfony/DependencyInjection.git", - "reference": "7e5bde3a607dde1f8ddef5180759068ad53d259c" + "url": "https://github.com/symfony/Validator.git", + "reference": "8f6f6be47fb8e1179cd225b1f949630e26221e42" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/7e5bde3a607dde1f8ddef5180759068ad53d259c", - "reference": "7e5bde3a607dde1f8ddef5180759068ad53d259c", + "url": "https://api.github.com/repos/symfony/Validator/zipball/8f6f6be47fb8e1179cd225b1f949630e26221e42", + "reference": "8f6f6be47fb8e1179cd225b1f949630e26221e42", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.3", + "symfony/translation": "~2.0" }, "require-dev": { "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", + "symfony/http-foundation": "~2.1", + "symfony/intl": "~2.3", "symfony/yaml": "~2.0" }, "suggest": { + "doctrine/common": "", "symfony/config": "", - "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", + "symfony/http-foundation": "", + "symfony/intl": "", "symfony/yaml": "" }, - "time": "2014-01-01 09:02:49", + "time": "2013-08-24 15:26:22", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\DependencyInjection\\": "" + "Symfony\\Component\\Validator\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1722,43 +1713,40 @@ "homepage": "http://symfony.com/contributors" } ], - "description": "Symfony DependencyInjection Component", + "description": "Symfony Validator Component", "homepage": "http://symfony.com" }, { - "name": "symfony/http-foundation", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/HttpFoundation", + "name": "symfony/yaml", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "target-dir": "Symfony/Component/Yaml", "source": { "type": "git", - "url": "https://github.com/symfony/HttpFoundation.git", - "reference": "6c6b8a7bcd7e2cc920cd6acace563fdbf121d844" + "url": "https://github.com/symfony/Yaml.git", + "reference": "5a279f1b5f5e1045a6c432354d9ea727ff3a9847" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/6c6b8a7bcd7e2cc920cd6acace563fdbf121d844", - "reference": "6c6b8a7bcd7e2cc920cd6acace563fdbf121d844", + "url": "https://api.github.com/repos/symfony/Yaml/zipball/5a279f1b5f5e1045a6c432354d9ea727ff3a9847", + "reference": "5a279f1b5f5e1045a6c432354d9ea727ff3a9847", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "time": "2014-01-05 02:10:50", + "time": "2013-08-24 15:26:22", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\HttpFoundation\\": "" - }, - "classmap": [ - "Symfony/Component/HttpFoundation/Resources/stubs" - ] + "Symfony\\Component\\Yaml\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1774,46 +1762,39 @@ "homepage": "http://symfony.com/contributors" } ], - "description": "Symfony HttpFoundation Component", + "description": "Symfony Yaml Component", "homepage": "http://symfony.com" }, { - "name": "symfony/event-dispatcher", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/EventDispatcher", + "name": "symfony/process", + "version": "v2.3.4", + "version_normalized": "2.3.4.0", + "target-dir": "Symfony/Component/Process", "source": { "type": "git", - "url": "https://github.com/symfony/EventDispatcher.git", - "reference": "e3ba42f6a70554ed05749e61b829550f6ac33601" + "url": "https://github.com/symfony/Process.git", + "reference": "1e91553e1cedd0b8fb1da6ea4f89b02e21713d5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/e3ba42f6a70554ed05749e61b829550f6ac33601", - "reference": "e3ba42f6a70554ed05749e61b829550f6ac33601", + "url": "https://api.github.com/repos/symfony/Process/zipball/1e91553e1cedd0b8fb1da6ea4f89b02e21713d5b", + "reference": "1e91553e1cedd0b8fb1da6ea4f89b02e21713d5b", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "require-dev": { - "symfony/dependency-injection": "~2.0" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, - "time": "2013-12-28 08:12:03", + "time": "2013-08-22 06:42:25", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\EventDispatcher\\": "" + "Symfony\\Component\\Process\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1830,63 +1811,33 @@ "homepage": "http://symfony.com/contributors" } ], - "description": "Symfony EventDispatcher Component", + "description": "Symfony Process Component", "homepage": "http://symfony.com" }, { - "name": "symfony/http-kernel", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/HttpKernel", + "name": "sdboyer/gliph", + "version": "0.1.4", + "version_normalized": "0.1.4.0", "source": { "type": "git", - "url": "https://github.com/symfony/HttpKernel.git", - "reference": "0605eedeb52c4d3a3144128d8336395a57be60d4" + "url": "https://github.com/sdboyer/gliph.git", + "reference": "aad932ef7d808105341cc9a36538e9fe2cb5ee82" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/0605eedeb52c4d3a3144128d8336395a57be60d4", - "reference": "0605eedeb52c4d3a3144128d8336395a57be60d4", + "url": "https://api.github.com/repos/sdboyer/gliph/zipball/aad932ef7d808105341cc9a36538e9fe2cb5ee82", + "reference": "aad932ef7d808105341cc9a36538e9fe2cb5ee82", "shasum": "" }, "require": { - "php": ">=5.3.3", - "psr/log": "~1.0", - "symfony/debug": "~2.3", - "symfony/event-dispatcher": "~2.1", - "symfony/http-foundation": "~2.4" - }, - "require-dev": { - "symfony/browser-kit": "~2.2", - "symfony/class-loader": "~2.1", - "symfony/config": "~2.0", - "symfony/console": "~2.2", - "symfony/dependency-injection": "~2.0", - "symfony/finder": "~2.0", - "symfony/process": "~2.0", - "symfony/routing": "~2.2", - "symfony/stopwatch": "~2.2", - "symfony/templating": "~2.2" - }, - "suggest": { - "symfony/browser-kit": "", - "symfony/class-loader": "", - "symfony/config": "", - "symfony/console": "", - "symfony/dependency-injection": "", - "symfony/finder": "" + "php": ">=5.3" }, - "time": "2014-01-05 02:12:11", + "time": "2013-09-27 01:15:21", "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.4-dev" - } - }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\HttpKernel\\": "" + "Gliph": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -1895,60 +1846,61 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "name": "Sam Boyer", + "email": "tech@samboyer.org" } ], - "description": "Symfony HttpKernel Component", - "homepage": "http://symfony.com" + "description": "A graph library for PHP.", + "homepage": "http://github.com/sdboyer/gliph", + "keywords": [ + "gliph", + "graph", + "library", + "php", + "spl" + ] }, { - "name": "symfony/routing", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/Routing", + "name": "symfony-cmf/routing", + "version": "1.1.0", + "version_normalized": "1.1.0.0", + "target-dir": "Symfony/Cmf/Component/Routing", "source": { "type": "git", - "url": "https://github.com/symfony/Routing.git", - "reference": "4abfb500aab8be458c9e3a227ea56b190584f78a" + "url": "https://github.com/symfony-cmf/Routing.git", + "reference": "9f8607950cbf888ec678713a35f3d0088857c85f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Routing/zipball/4abfb500aab8be458c9e3a227ea56b190584f78a", - "reference": "4abfb500aab8be458c9e3a227ea56b190584f78a", + "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/9f8607950cbf888ec678713a35f3d0088857c85f", + "reference": "9f8607950cbf888ec678713a35f3d0088857c85f", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.3", + "psr/log": "~1.0", + "symfony/http-kernel": "~2.2", + "symfony/routing": "~2.2" }, "require-dev": { - "doctrine/annotations": "~1.0", - "psr/log": "~1.0", "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", - "symfony/yaml": "~2.0" + "symfony/dependency-injection": "~2.0", + "symfony/event-dispatcher": "~2.1" }, "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" + "symfony/event-dispatcher": "DynamicRouter can optionally trigger an event at the start of matching. Minimal version ~2.1" }, - "time": "2014-01-05 02:10:50", + "time": "2013-10-14 15:32:46", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "1.1-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\Routing\\": "" + "Symfony\\Cmf\\Component\\Routing": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1957,180 +1909,97 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "name": "Symfony CMF Community", + "homepage": "https://github.com/symfony-cmf/Routing/contributors" } ], - "description": "Symfony Routing Component", - "homepage": "http://symfony.com", + "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers", + "homepage": "http://cmf.symfony.com", "keywords": [ - "router", - "routing", - "uri", - "url" + "database", + "routing" ] }, { - "name": "symfony/serializer", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/Serializer", + "name": "phpunit/php-file-iterator", + "version": "1.3.4", + "version_normalized": "1.3.4.0", "source": { "type": "git", - "url": "https://github.com/symfony/Serializer.git", - "reference": "60c54346958604379392672a3a998650a169a7f4" + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Serializer/zipball/60c54346958604379392672a3a998650a169a7f4", - "reference": "60c54346958604379392672a3a998650a169a7f4", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/acd690379117b042d1c8af1fafd61bde001bf6bb", + "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "time": "2014-01-01 08:14:50", + "time": "2013-10-10 15:34:57", "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.4-dev" - } - }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\Serializer\\": "" - } + "classmap": [ + "File/" + ] }, "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } + "include-path": [ + "" ], - "description": "Symfony Serializer Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/property-access", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/PropertyAccess", - "source": { - "type": "git", - "url": "https://github.com/symfony/PropertyAccess.git", - "reference": "274951234150e303c83099a2429be6be35629fe9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/PropertyAccess/zipball/274951234150e303c83099a2429be6be35629fe9", - "reference": "274951234150e303c83099a2429be6be35629fe9", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "time": "2013-11-13 21:30:16", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.4-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\PropertyAccess\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "name": "Sebastian Bergmann", + "email": "sb@sebastian-bergmann.de", + "role": "lead" } ], - "description": "Symfony PropertyAccess Component", - "homepage": "http://symfony.com", + "description": "FilterIterator implementation that filters files based on a list of suffixes.", + "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", "keywords": [ - "access", - "array", - "extraction", - "index", - "injection", - "object", - "property", - "property path", - "reflection" + "filesystem", + "iterator" ] }, { - "name": "symfony/validator", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/Validator", + "name": "doctrine/annotations", + "version": "dev-master", + "version_normalized": "9999999-dev", "source": { "type": "git", - "url": "https://github.com/symfony/Validator.git", - "reference": "7ea4e53f8d68bf3ae9cca28765d49d7930618730" + "url": "https://github.com/doctrine/annotations.git", + "reference": "463d926a8dcc49271cb7db5a08364a70ed6e3cd3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Validator/zipball/7ea4e53f8d68bf3ae9cca28765d49d7930618730", - "reference": "7ea4e53f8d68bf3ae9cca28765d49d7930618730", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/463d926a8dcc49271cb7db5a08364a70ed6e3cd3", + "reference": "463d926a8dcc49271cb7db5a08364a70ed6e3cd3", "shasum": "" }, "require": { - "php": ">=5.3.3", - "symfony/property-access": "~2.2", - "symfony/translation": "~2.0" + "doctrine/lexer": "1.*", + "php": ">=5.3.2" }, "require-dev": { - "doctrine/annotations": "~1.0", - "doctrine/cache": "~1.0", - "symfony/config": "~2.2", - "symfony/http-foundation": "~2.1", - "symfony/intl": "~2.3", - "symfony/yaml": "~2.0" - }, - "suggest": { - "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.", - "doctrine/cache": "For using the default cached annotation reader", - "symfony/config": "", - "symfony/http-foundation": "", - "symfony/intl": "", - "symfony/yaml": "" + "doctrine/cache": "1.*" }, - "time": "2014-01-01 08:14:50", + "time": "2013-11-19 05:59:59", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "1.0.x-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\Validator\\": "" + "Doctrine\\Common\\Annotations\\": "lib/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2139,64 +2008,122 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Jonathan Wage", + "email": "jonwage@gmail.com", + "homepage": "http://www.jwage.com/", + "role": "Creator" }, { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com", + "homepage": "http://www.instaclick.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com", + "homepage": "http://jmsyst.com", + "role": "Developer of wrapped JMSSerializerBundle" } ], - "description": "Symfony Validator Component", - "homepage": "http://symfony.com" + "description": "Docblock Annotations Parser", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "annotations", + "docblock", + "parser" + ] }, { - "name": "symfony/yaml", - "version": "v2.4.1", - "version_normalized": "2.4.1.0", - "target-dir": "Symfony/Component/Yaml", + "name": "doctrine/common", + "version": "dev-bmaster", + "version_normalized": "dev-bmaster", "source": { "type": "git", - "url": "https://github.com/symfony/Yaml.git", - "reference": "4e1a237fc48145fae114b96458d799746ad89aa0" + "url": "https://github.com/dawehner/common.git", + "reference": "99b44f52a1b844f9c4c34e618b160664d5c27daf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/4e1a237fc48145fae114b96458d799746ad89aa0", - "reference": "4e1a237fc48145fae114b96458d799746ad89aa0", + "url": "https://api.github.com/repos/dawehner/common/zipball/99b44f52a1b844f9c4c34e618b160664d5c27daf", + "reference": "99b44f52a1b844f9c4c34e618b160664d5c27daf", "shasum": "" }, + "archive": { + "exclude": [ + "!vendor", + "tests", + "*phpunit.xml", + ".travis.yml", + "build.xml", + "build.properties", + "composer.phar" + ] + }, "require": { - "php": ">=5.3.3" + "doctrine/annotations": "1.*", + "doctrine/cache": "1.*", + "doctrine/collections": "1.*", + "doctrine/inflector": "1.*", + "doctrine/lexer": "1.*", + "php": ">=5.3.2" }, - "time": "2013-12-28 08:12:03", + "time": "2013-12-12 18:37:37", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.5.x-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\Yaml\\": "" + "Doctrine\\Common\\": "lib/" } }, - "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" }, { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" } ], - "description": "Symfony Yaml Component", - "homepage": "http://symfony.com" + "description": "Common Library for Doctrine projects", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "annotations", + "collections", + "eventmanager", + "persistence", + "spl" + ], + "support": { + "source": "https://github.com/dawehner/common/tree/bmaster" + } } ] diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/CHANGELOG.md b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/CHANGELOG.md index b770166735bf28b0d2186f058b8ca8d0a2700f3f..54ffb642e69dd3e8cabcf1fb38886bf9703039e8 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/CHANGELOG.md +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/CHANGELOG.md @@ -1,11 +1,6 @@ CHANGELOG ========= -2.4.0 ------ - - * deprecated the DebugClassLoader as it has been moved to the Debug component instead - 2.3.0 ----- diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassCollectionLoader.php b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassCollectionLoader.php index b2be33ad88ec1d9ee8c7322d32a6be0055bedb61..be1c7e2b5563a99df74456a663c203fbb5b77343 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassCollectionLoader.php +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassCollectionLoader.php @@ -53,7 +53,7 @@ public static function load($classes, $cacheDir, $name, $autoReload, $adaptive = $classes = array_diff($classes, $declared); // the cache is different depending on which classes are already declared - $name = $name.'-'.substr(hash('sha256', implode('|', $classes)), 0, 5); + $name = $name.'-'.substr(md5(implode('|', $classes)), 0, 5); } $classes = array_unique($classes); diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassMapGenerator.php b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassMapGenerator.php index 59c99d0f1b75d0832a67e91c1aedbbb1bbe08789..3b09305954f3417c08198459369fcbed6521db46 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassMapGenerator.php +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassMapGenerator.php @@ -39,7 +39,7 @@ public static function dump($dirs, $file) /** * Iterate over all files in the given directory searching for classes * - * @param \Iterator|string $dir The directory to search in or an iterator + * @param Iterator|string $dir The directory to search in or an iterator * * @return array A class map array */ diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugClassLoader.php b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugClassLoader.php index 8edd4c1999fa768f0ce40ec2112e47307e538f47..842f4744c0f66be3b0ef8697fac82b0bf2c0dd6b 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugClassLoader.php +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugClassLoader.php @@ -22,8 +22,6 @@ * @author Christophe Coevoet <stof@notk.org> * * @api - * - * @deprecated Deprecated since version 2.4, to be removed in 3.0. Use the DebugClassLoader provided by the Debug component instead. */ class DebugClassLoader { @@ -41,16 +39,6 @@ public function __construct($classFinder) $this->classFinder = $classFinder; } - /** - * Gets the wrapped class loader. - * - * @return object a class loader instance - */ - public function getClassLoader() - { - return $this->classFinder; - } - /** * Replaces all autoloaders implementing a findFile method by a DebugClassLoader wrapper. */ diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md index fc222b1c9e3988a6c0753af83644b50905b53836..5ac31c64890d52e03f60187b9fb980512d579707 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md @@ -65,5 +65,5 @@ Resources You can run the unit tests with the following command: $ cd path/to/Symfony/Component/ClassLoader/ - $ composer.phar install + $ composer.phar install --dev $ phpunit diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassCollectionLoaderTest.php b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassCollectionLoaderTest.php index 7b71854da381de04cb0ac934562fa455fd48b13f..dfa51e37fed1335d881d0ccaa60f61cedb134a6a 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassCollectionLoaderTest.php +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassCollectionLoaderTest.php @@ -189,7 +189,7 @@ public function getFixNamespaceDeclarationsDataWithoutTokenizer() } /** - * @expectedException \InvalidArgumentException + * @expectedException InvalidArgumentException */ public function testUnableToLoadClassException() { diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassLoaderTest.php b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassLoaderTest.php index a870935797cda98feaf2eab6db80ca930464e82e..9dae537442f5455f234be5b5ae797fa16fb8979f 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassLoaderTest.php +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassLoaderTest.php @@ -72,7 +72,7 @@ public function testLoadNonexistentClass($className, $testClassName, $message) public function getLoadNonexistentClassTests() { return array( - array('\\Pearlike3_Bar', '\\Pearlike3_Bar', '->loadClass() loads non existing Pearlike3_Bar class with a leading slash'), + array('\\Pearlike3_Bar', '\\Pearlike3_Bar', '->loadClass() loads non exising Pearlike3_Bar class with a leading slash'), ); } diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassMapGeneratorTest.php b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassMapGeneratorTest.php index b8600fc54ed7b4567dc88cce8c11394da3cae6b3..18f64f75887ef749a2b08f3c048e6e617700bafb 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassMapGeneratorTest.php +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassMapGeneratorTest.php @@ -120,6 +120,10 @@ public function getTestCreateMapTests() public function testCreateMapFinderSupport() { + if (!class_exists('Symfony\\Component\\Finder\\Finder')) { + $this->markTestSkipped('Finder component is not available'); + } + $finder = new \Symfony\Component\Finder\Finder(); $finder->files()->in(__DIR__.'/Fixtures/beta/NamespaceCollision'); diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/DebugClassLoaderTest.php b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/DebugClassLoaderTest.php new file mode 100644 index 0000000000000000000000000000000000000000..873515c3369f594a814363d3b7aed6ecabaa4bd8 --- /dev/null +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/DebugClassLoaderTest.php @@ -0,0 +1,52 @@ +<?php + +/* + * This file is part of the Symfony package. + * + * (c) Fabien Potencier <fabien@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; +use Symfony\Component\ClassLoader\DebugClassLoader; + +class DebugClassLoaderTest extends \PHPUnit_Framework_TestCase +{ + private $loader; + + protected function setUp() + { + $this->loader = new ClassLoader(); + spl_autoload_register(array($this->loader, 'loadClass')); + } + + protected function tearDown() + { + spl_autoload_unregister(array($this->loader, 'loadClass')); + } + + public function testIdempotence() + { + DebugClassLoader::enable(); + 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('classFinder'); + $reflProp->setAccessible(true); + + $this->assertNotInstanceOf('Symfony\Component\ClassLoader\DebugClassLoader', $reflProp->getValue($function[0])); + + return; + } + } + + throw new \Exception('DebugClassLoader did not register'); + } +} diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/composer.json b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/composer.json index b28f4f55cb269344ee728494bc931d7562d0695f..06a1c624b24b3dc9b2b4ef558ffd067a41f88956 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/composer.json +++ b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/composer.json @@ -28,7 +28,7 @@ "target-dir": "Symfony/Component/ClassLoader", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } } } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/CHANGELOG.md b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/CHANGELOG.md index 9a41e85705514b5a1970ff0bb2ad477a59745eca..4839bd8bee7b41eb1e8c23ba9aece86a267784d6 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/CHANGELOG.md +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/CHANGELOG.md @@ -1,12 +1,6 @@ CHANGELOG ========= -2.4.0 ------ - - * added support for expressions in service definitions - * added ContainerAwareTrait to add default container aware behavior to a class - 2.2.0 ----- diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckCircularReferencesPass.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckCircularReferencesPass.php index e81110dc0140466454c8ad40042fe3d40b4ac6c5..03528fefa9efad0503a792adb4e65f065eb8b4ce 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckCircularReferencesPass.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckCircularReferencesPass.php @@ -28,7 +28,6 @@ class CheckCircularReferencesPass implements CompilerPassInterface { private $currentId; private $currentPath; - private $checkedNodes; /** * Checks the ContainerBuilder object for circular references. @@ -39,7 +38,6 @@ public function process(ContainerBuilder $container) { $graph = $container->getCompiler()->getServiceReferenceGraph(); - $this->checkedNodes = array(); foreach ($graph->getNodes() as $id => $node) { $this->currentId = $id; $this->currentPath = array($id); @@ -60,20 +58,15 @@ private function checkOutEdges(array $edges) foreach ($edges as $edge) { $node = $edge->getDestNode(); $id = $node->getId(); + $searchKey = array_search($id, $this->currentPath); + $this->currentPath[] = $id; - if (empty($this->checkedNodes[$id])) { - $searchKey = array_search($id, $this->currentPath); - $this->currentPath[] = $id; - - if (false !== $searchKey) { - throw new ServiceCircularReferenceException($id, array_slice($this->currentPath, $searchKey)); - } - - $this->checkOutEdges($node->getOutEdges()); - - $this->checkedNodes[$id] = true; - array_pop($this->currentPath); + if (false !== $searchKey) { + throw new ServiceCircularReferenceException($id, array_slice($this->currentPath, $searchKey)); } + + $this->checkOutEdges($node->getOutEdges()); + array_pop($this->currentPath); } } } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckDefinitionValidityPass.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckDefinitionValidityPass.php index c8978f377f44cf287fa8fb6db342035bce12b3aa..e536331c6e279653dfc3a0df36c92fa228400c4b 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckDefinitionValidityPass.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckDefinitionValidityPass.php @@ -74,17 +74,6 @@ public function process(ContainerBuilder $container) $id )); } - - // tag attribute values must be scalars - foreach ($definition->getTags() as $name => $tags) { - foreach ($tags as $attributes) { - foreach ($attributes as $attribute => $value) { - if (!is_scalar($value) && null !== $value) { - throw new RuntimeException(sprintf('A "tags" attribute must be of a scalar-type for service "%s", tag "%s", attribute "%s".', $id, $name, $attribute)); - } - } - } - } } } } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/Compiler.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/Compiler.php index 4dfa9cf31cb38763b2e0e7cde2700470cf02fd58..01f224b8232574c7a209c7e4a49add7693c9ba6b 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/Compiler.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/Compiler.php @@ -12,6 +12,7 @@ namespace Symfony\Component\DependencyInjection\Compiler; use Symfony\Component\DependencyInjection\ContainerBuilder; +use Symfony\Component\DependencyInjection\Compiler\PassConfig; /** * This class is used to remove circular dependencies between individual passes. @@ -23,7 +24,7 @@ class Compiler { private $passConfig; - private $log = array(); + private $log; private $loggingFormatter; private $serviceReferenceGraph; @@ -35,6 +36,7 @@ public function __construct() $this->passConfig = new PassConfig(); $this->serviceReferenceGraph = new ServiceReferenceGraph(); $this->loggingFormatter = new LoggingFormatter(); + $this->log = array(); } /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/InlineServiceDefinitionsPass.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/InlineServiceDefinitionsPass.php index ba1688f5e86752f8ad816b43e8ed7d338e36f996..ab8895a8c9a54ef1b5d69a14526cee8a1fe87c8c 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/InlineServiceDefinitionsPass.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/InlineServiceDefinitionsPass.php @@ -117,7 +117,7 @@ private function isInlineableDefinition(ContainerBuilder $container, $id, Defini return true; } - if ($definition->isPublic() || $definition->isLazy()) { + if ($definition->isPublic()) { return false; } @@ -125,10 +125,6 @@ private function isInlineableDefinition(ContainerBuilder $container, $id, Defini return true; } - if ($this->currentId == $id) { - return false; - } - $ids = array(); foreach ($this->graph->getNode($id)->getInEdges() as $edge) { $ids[] = $edge->getSourceNode()->getId(); diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/PassConfig.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/PassConfig.php index ac395db22e9a27e810f65f9aea3beebf953122c1..e863f75640fb15c618129b1f67f042f7505f0092 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/PassConfig.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/PassConfig.php @@ -31,9 +31,9 @@ class PassConfig const TYPE_REMOVE = 'removing'; private $mergePass; - private $afterRemovingPasses = array(); - private $beforeOptimizationPasses = array(); - private $beforeRemovingPasses = array(); + private $afterRemovingPasses; + private $beforeOptimizationPasses; + private $beforeRemovingPasses; private $optimizationPasses; private $removingPasses; @@ -44,6 +44,10 @@ public function __construct() { $this->mergePass = new MergeExtensionConfigurationPass(); + $this->afterRemovingPasses = array(); + $this->beforeOptimizationPasses = array(); + $this->beforeRemovingPasses = array(); + $this->optimizationPasses = array( new ResolveDefinitionTemplatesPass(), new ResolveParameterPlaceHoldersPass(), diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php index 4699ac34148e2c2e89a07cbd99d009de46f99f5e..c5187f3b91d1f600085121ae566b4bed35d957bc 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php @@ -112,7 +112,7 @@ private function resolveDefinition($id, DefinitionDecorator $definition) if (isset($changes['public'])) { $def->setPublic($definition->isPublic()); } - if (isset($changes['lazy'])) { + if (isset($changes['lazy'])){ $def->setLazy($definition->isLazy()); } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ServiceReferenceGraph.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ServiceReferenceGraph.php index 1de14fa62f96b90303a376d6ec0978017188f6df..fbd33eeee16f9a90491664ca57a43d34c25287a4 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ServiceReferenceGraph.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ServiceReferenceGraph.php @@ -26,7 +26,15 @@ class ServiceReferenceGraph /** * @var ServiceReferenceGraphNode[] */ - private $nodes = array(); + private $nodes; + + /** + * Constructor. + */ + public function __construct() + { + $this->nodes = array(); + } /** * Checks if the graph has a specific node. diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ServiceReferenceGraphNode.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ServiceReferenceGraphNode.php index 283f6de5ba0ef7d014b10579a5963424aa87825a..3fd50771d54e2408291bb6b37e1316d2ce9d9c43 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ServiceReferenceGraphNode.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/ServiceReferenceGraphNode.php @@ -24,8 +24,8 @@ class ServiceReferenceGraphNode { private $id; - private $inEdges = array(); - private $outEdges = array(); + private $inEdges; + private $outEdges; private $value; /** @@ -38,6 +38,8 @@ public function __construct($id, $value) { $this->id = $id; $this->value = $value; + $this->inEdges = array(); + $this->outEdges = array(); } /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Container.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Container.php index c4d8f16f32ee6ce891102aedee35f644c6465e16..ab0abf316fc9ade238e4bf6926c3c606f5188887 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Container.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Container.php @@ -67,13 +67,13 @@ class Container implements IntrospectableContainerInterface */ protected $parameterBag; - protected $services = array(); - protected $methodMap = array(); - protected $aliases = array(); - protected $scopes = array(); - protected $scopeChildren = array(); - protected $scopedServices = array(); - protected $scopeStacks = array(); + protected $services; + protected $methodMap; + protected $aliases; + protected $scopes; + protected $scopeChildren; + protected $scopedServices; + protected $scopeStacks; protected $loading = array(); /** @@ -85,7 +85,14 @@ class Container implements IntrospectableContainerInterface */ public function __construct(ParameterBagInterface $parameterBag = null) { - $this->parameterBag = $parameterBag ?: new ParameterBag(); + $this->parameterBag = null === $parameterBag ? new ParameterBag() : $parameterBag; + + $this->services = array(); + $this->aliases = array(); + $this->scopes = array(); + $this->scopeChildren = array(); + $this->scopedServices = array(); + $this->scopeStacks = array(); $this->set('service_container', $this); } @@ -207,7 +214,7 @@ public function set($id, $service, $scope = self::SCOPE_CONTAINER) $this->services[$id] = $service; - if (method_exists($this, $method = 'synchronize'.strtr($id, array('_' => '', '.' => '_', '\\' => '_')).'Service')) { + if (method_exists($this, $method = 'synchronize'.strtr($id, array('_' => '', '.' => '_')).'Service')) { $this->$method(); } @@ -233,10 +240,9 @@ public function has($id) { $id = strtolower($id); - return isset($this->services[$id]) - || array_key_exists($id, $this->services) - || isset($this->aliases[$id]) - || method_exists($this, 'get'.strtr($id, array('_' => '', '.' => '_', '\\' => '_')).'Service') + return array_key_exists($id, $this->services) + || array_key_exists($id, $this->aliases) + || method_exists($this, 'get'.strtr($id, array('_' => '', '.' => '_')).'Service') ; } @@ -261,21 +267,16 @@ public function has($id) */ public function get($id, $invalidBehavior = self::EXCEPTION_ON_INVALID_REFERENCE) { - // Attempt to retrieve the service by checking first aliases then - // available services. Service IDs are case insensitive, however since - // this method can be called thousands of times during a request, avoid - // calling strtolower() unless necessary. - foreach (array(false, true) as $strtolower) { - if ($strtolower) { - $id = strtolower($id); - } - if (isset($this->aliases[$id])) { - $id = $this->aliases[$id]; - } - // Re-use shared service instance if it exists. - if (isset($this->services[$id]) || array_key_exists($id, $this->services)) { - return $this->services[$id]; - } + $id = strtolower($id); + + // resolve aliases + if (isset($this->aliases[$id])) { + $id = $this->aliases[$id]; + } + + // re-use shared service instance if it exists + if (array_key_exists($id, $this->services)) { + return $this->services[$id]; } if (isset($this->loading[$id])) { @@ -284,7 +285,7 @@ public function get($id, $invalidBehavior = self::EXCEPTION_ON_INVALID_REFERENCE if (isset($this->methodMap[$id])) { $method = $this->methodMap[$id]; - } elseif (method_exists($this, $method = 'get'.strtr($id, array('_' => '', '.' => '_', '\\' => '_')).'Service')) { + } elseif (method_exists($this, $method = 'get'.strtr($id, array('_' => '', '.' => '_')).'Service')) { // $method is set to the right value, proceed } else { if (self::EXCEPTION_ON_INVALID_REFERENCE === $invalidBehavior) { @@ -338,9 +339,7 @@ public function get($id, $invalidBehavior = self::EXCEPTION_ON_INVALID_REFERENCE */ public function initialized($id) { - $id = strtolower($id); - - return isset($this->services[$id]) || array_key_exists($id, $this->services); + return array_key_exists(strtolower($id), $this->services); } /** @@ -525,7 +524,7 @@ public function isScopeActive($name) */ public static function camelize($id) { - return strtr(ucwords(strtr($id, array('_' => ' ', '.' => '_ ', '\\' => '_ '))), array(' ' => '')); + return strtr(ucwords(strtr($id, array('_' => ' ', '.' => '_ '))), array(' ' => '')); } /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ContainerAwareTrait.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ContainerAwareTrait.php deleted file mode 100644 index 57280aad60da278010f11d51282b6d45eb133a3d..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ContainerAwareTrait.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; - -/** - * ContainerAware trait. - * - * @author Fabien Potencier <fabien@symfony.com> - */ -trait ContainerAwareTrait -{ - /** - * @var ContainerInterface - */ - protected $container; - - /** - * Sets the Container associated with this Controller. - * - * @param ContainerInterface $container A ContainerInterface instance - */ - public function setContainer(ContainerInterface $container = null) - { - $this->container = $container; - } -} diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ContainerBuilder.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ContainerBuilder.php index 0e07ec6b159b12285ca9e77abc4e47bbd13e5639..733d016d660857cbca327776de15bb95adec3c24 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ContainerBuilder.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ContainerBuilder.php @@ -24,7 +24,6 @@ use Symfony\Component\Config\Resource\ResourceInterface; use Symfony\Component\DependencyInjection\LazyProxy\Instantiator\InstantiatorInterface; use Symfony\Component\DependencyInjection\LazyProxy\Instantiator\RealServiceInstantiator; -use Symfony\Component\ExpressionLanguage\Expression; /** * ContainerBuilder is a DI container that provides an API to easily describe services. @@ -79,11 +78,6 @@ class ContainerBuilder extends Container implements TaggedContainerInterface */ private $proxyInstantiator; - /** - * @var ExpressionLanguage|null - */ - private $expressionLanguage; - /** * Sets the track resources flag. * @@ -311,7 +305,11 @@ public function loadFromExtension($extension, array $values = array()) */ public function addCompilerPass(CompilerPassInterface $pass, $type = PassConfig::TYPE_BEFORE_OPTIMIZATION) { - $this->getCompiler()->addPass($pass, $type); + if (null === $this->compiler) { + $this->compiler = new Compiler(); + } + + $this->compiler->addPass($pass, $type); $this->addObjectResource($pass); @@ -327,7 +325,11 @@ public function addCompilerPass(CompilerPassInterface $pass, $type = PassConfig: */ public function getCompilerPassConfig() { - return $this->getCompiler()->getPassConfig(); + if (null === $this->compiler) { + $this->compiler = new Compiler(); + } + + return $this->compiler->getPassConfig(); } /** @@ -608,17 +610,15 @@ public function prependExtensionConfig($name, array $config) */ public function compile() { - $compiler = $this->getCompiler(); + if (null === $this->compiler) { + $this->compiler = new Compiler(); + } if ($this->trackResources) { - foreach ($compiler->getPassConfig()->getPasses() as $pass) { + foreach ($this->compiler->getPassConfig()->getPasses() as $pass) { $this->addObjectResource($pass); } - } - $compiler->compile($this); - - if ($this->trackResources) { foreach ($this->definitions as $definition) { if ($definition->isLazy() && ($class = $definition->getClass()) && class_exists($class)) { $this->addClassResource(new \ReflectionClass($class)); @@ -626,6 +626,8 @@ public function compile() } } + $this->compiler->compile($this); + $this->extensionConfigs = array(); parent::compile(); @@ -991,12 +993,11 @@ public function createService(Definition $definition, $id, $tryProxy = true) } /** - * Replaces service references by the real service instance and evaluates expressions. + * Replaces service references by the real service instance. * * @param mixed $value A value * - * @return mixed The same value with all service references replaced by - * the real service instances and all expressions evaluated + * @return mixed The same value with all service references replaced by the real service instances */ public function resolveServices($value) { @@ -1008,8 +1009,6 @@ public function resolveServices($value) $value = $this->get((string) $value, $value->getInvalidBehavior()); } elseif ($value instanceof Definition) { $value = $this->createService($value, null); - } elseif ($value instanceof Expression) { - $value = $this->getExpressionLanguage()->evaluate($value, array('container' => $this)); } return $value; @@ -1160,16 +1159,4 @@ private function shareService(Definition $definition, $service, $id) } } } - - private function getExpressionLanguage() - { - if (null === $this->expressionLanguage) { - if (!class_exists('Symfony\Component\ExpressionLanguage\ExpressionLanguage')) { - throw new RuntimeException('Unable to use expressions as the Symfony ExpressionLanguage component is not installed.'); - } - $this->expressionLanguage = new ExpressionLanguage(); - } - - return $this->expressionLanguage; - } } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Definition.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Definition.php index 428fee27c3a21d1bb781be40b25a26d85bf0dfd6..1168444389ef1b3edd266201b34ffedb72f52087 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Definition.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Definition.php @@ -28,24 +28,24 @@ class Definition private $factoryClass; private $factoryMethod; private $factoryService; - private $scope = ContainerInterface::SCOPE_CONTAINER; - private $properties = array(); - private $calls = array(); + private $scope; + private $properties; + private $calls; private $configurator; - private $tags = array(); - private $public = true; - private $synthetic = false; - private $abstract = false; - private $synchronized = false; - private $lazy = false; + private $tags; + private $public; + private $synthetic; + private $abstract; + private $synchronized; + private $lazy; protected $arguments; /** * Constructor. * - * @param string|null $class The service class - * @param array $arguments An array of arguments to pass to the service constructor + * @param string $class The service class + * @param array $arguments An array of arguments to pass to the service constructor * * @api */ @@ -53,6 +53,15 @@ public function __construct($class = null, array $arguments = array()) { $this->class = $class; $this->arguments = $arguments; + $this->calls = array(); + $this->scope = ContainerInterface::SCOPE_CONTAINER; + $this->tags = array(); + $this->public = true; + $this->synthetic = false; + $this->synchronized = false; + $this->lazy = false; + $this->abstract = false; + $this->properties = array(); } /** @@ -75,7 +84,7 @@ public function setFactoryClass($factoryClass) /** * Gets the factory class. * - * @return string|null The factory class name + * @return string The factory class name * * @api */ @@ -103,7 +112,7 @@ public function setFactoryMethod($factoryMethod) /** * Gets the factory method. * - * @return string|null The factory method name + * @return string The factory method name * * @api */ @@ -131,7 +140,7 @@ public function setFactoryService($factoryService) /** * Gets the factory service id. * - * @return string|null The factory service id + * @return string The factory service id * * @api */ @@ -159,7 +168,7 @@ public function setClass($class) /** * Gets the service class. * - * @return string|null The service class + * @return string The service class * * @api */ @@ -499,7 +508,7 @@ public function setFile($file) /** * Gets the file to require before creating the service. * - * @return string|null The full pathname to include + * @return string The full pathname to include * * @api */ @@ -695,7 +704,7 @@ public function setConfigurator($callable) /** * Gets the configurator to call after the service is fully initialized. * - * @return callable|null The PHP callable to call + * @return callable The PHP callable to call * * @api */ diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/DefinitionDecorator.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/DefinitionDecorator.php index b7eed8c564d4d0d582c4c90cc24ec6cad9becdae..1f72b8f16b2e8d277770e5658a389cb67e255cdc 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/DefinitionDecorator.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/DefinitionDecorator.php @@ -24,7 +24,7 @@ class DefinitionDecorator extends Definition { private $parent; - private $changes = array(); + private $changes; /** * Constructor. @@ -38,6 +38,7 @@ public function __construct($parent) parent::__construct(); $this->parent = $parent; + $this->changes = array(); } /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php index 7be1fe2ece19304c63faefd3c2f7d971d68fa429..8888d3f3f433aa26b5e0609edb00693fae7b6645 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php @@ -23,8 +23,6 @@ use Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException; use Symfony\Component\DependencyInjection\LazyProxy\PhpDumper\DumperInterface as ProxyDumper; use Symfony\Component\DependencyInjection\LazyProxy\PhpDumper\NullDumper; -use Symfony\Component\DependencyInjection\ExpressionLanguage; -use Symfony\Component\ExpressionLanguage\Expression; /** * PhpDumper dumps a service container as a PHP class. @@ -53,7 +51,6 @@ class PhpDumper extends Dumper private $referenceVariables; private $variableCount; private $reservedVariables = array('instance', 'class'); - private $expressionLanguage; /** * @var \Symfony\Component\DependencyInjection\LazyProxy\PhpDumper\DumperInterface @@ -89,7 +86,6 @@ public function setProxyDumper(ProxyDumper $proxyDumper) * * * class: The class name * * base_class: The base class name - * * namespace: The class namespace * * @param array $options An array of options * @@ -102,10 +98,9 @@ public function dump(array $options = array()) $options = array_merge(array( 'class' => 'ProjectServiceContainer', 'base_class' => 'Container', - 'namespace' => '', ), $options); - $code = $this->startClass($options['class'], $options['base_class'], $options['namespace']); + $code = $this->startClass($options['class'], $options['base_class']); if ($this->container->isFrozen()) { $code .= $this->addFrozenConstructor(); @@ -193,7 +188,7 @@ private function addServiceLocalTempVariables($cId, $definition) */ private function addProxyClasses() { - /* @var $definitions Definition[] */ + /* @var $proxyDefinitions Definition[] */ $definitions = array_filter( $this->container->getDefinitions(), array($this->getProxyDumper(), 'isProxyCandidate') @@ -446,12 +441,6 @@ private function addServiceInlinedDefinitionsSetup($id, $definition) continue; } - // if the instance is simple, the return statement has already been generated - // so, the only possible way to get there is because of a circular reference - if ($this->isSimpleInstance($id, $definition)) { - throw new ServiceCircularReferenceException($id, array($id)); - } - $name = (string) $this->definitionVariables->offsetGet($iDefinition); $code .= $this->addServiceMethodCalls(null, $iDefinition, $name); $code .= $this->addServiceProperties(null, $iDefinition, $name); @@ -711,24 +700,24 @@ private function addNewInstance($id, Definition $definition, $return, $instantia * * @param string $class Class name * @param string $baseClass The name of the base class - * @param string $namespace The class namespace * * @return string */ - private function startClass($class, $baseClass, $namespace) + private function startClass($class, $baseClass) { $bagClass = $this->container->isFrozen() ? 'use Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag;' : 'use Symfony\Component\DependencyInjection\ParameterBag\\ParameterBag;'; - $namespaceLine = $namespace ? "namespace $namespace;\n" : ''; return <<<EOF <?php -$namespaceLine + 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\Reference; +use Symfony\Component\DependencyInjection\Parameter; $bagClass /** @@ -980,8 +969,6 @@ private function exportParameters($parameters, $path = '', $indent = 12) throw new InvalidArgumentException(sprintf('You cannot dump a container with parameters that contain service definitions. Definition for "%s" found in "%s".', $value->getClass(), $path.'/'.$key)); } elseif ($value instanceof Reference) { throw new InvalidArgumentException(sprintf('You cannot dump a container with parameters that contain references to other services (reference to service "%s" found in "%s").', $value, $path.'/'.$key)); - } elseif ($value instanceof Expression) { - throw new InvalidArgumentException(sprintf('You cannot dump a container with parameters that contain expressions. Expression "%s" found in "%s".', $value, $path.'/'.$key)); } else { $value = var_export($value, true); } @@ -1118,7 +1105,7 @@ private function getDefinitionsFromArguments(array $arguments) * * @return Boolean */ - private function hasReference($id, array $arguments, $deep = false, array $visited = array()) + private function hasReference($id, array $arguments, $deep = false, $visited = array()) { foreach ($arguments as $argument) { if (is_array($argument)) { @@ -1126,15 +1113,14 @@ private function hasReference($id, array $arguments, $deep = false, array $visit return true; } } elseif ($argument instanceof Reference) { - $argumentId = (string) $argument; - if ($id === $argumentId) { + if ($id === (string) $argument) { return true; } - if ($deep && !isset($visited[$argumentId])) { - $visited[$argumentId] = true; + if ($deep && !isset($visited[(string) $argument])) { + $visited[(string) $argument] = true; - $service = $this->container->getDefinition($argumentId); + $service = $this->container->getDefinition((string) $argument); $arguments = array_merge($service->getMethodCalls(), $service->getArguments(), $service->getProperties()); if ($this->hasReference($id, $arguments, $deep, $visited)) { @@ -1206,8 +1192,6 @@ private function dumpValue($value, $interpolate = true) } return $this->getServiceCall((string) $value, $value); - } elseif ($value instanceof Expression) { - return $this->getExpressionLanguage()->compile((string) $value, array('container')); } elseif ($value instanceof Parameter) { return $this->dumpParameter($value); } elseif (true === $interpolate && is_string($value)) { @@ -1330,16 +1314,4 @@ private function getNextVariableName() return $name; } } - - private function getExpressionLanguage() - { - if (null === $this->expressionLanguage) { - if (!class_exists('Symfony\Component\ExpressionLanguage\ExpressionLanguage')) { - throw new RuntimeException('Unable to use expressions as the Symfony ExpressionLanguage component is not installed.'); - } - $this->expressionLanguage = new ExpressionLanguage(); - } - - return $this->expressionLanguage; - } } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/XmlDumper.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/XmlDumper.php index 31bec31b22456e8c84a638abe0d90602343dc769..a311af348e348fe8d726186bd8ceb09f546cfd62 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/XmlDumper.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/XmlDumper.php @@ -17,7 +17,6 @@ use Symfony\Component\DependencyInjection\Definition; use Symfony\Component\DependencyInjection\Alias; use Symfony\Component\DependencyInjection\Exception\RuntimeException; -use Symfony\Component\ExpressionLanguage\Expression; /** * XmlDumper dumps a service container as an XML string. @@ -260,10 +259,6 @@ private function convertParameters($parameters, $type, \DOMElement $parent, $key } elseif ($value instanceof Definition) { $element->setAttribute('type', 'service'); $this->addService($value, null, $element); - } elseif ($value instanceof Expression) { - $element->setAttribute('type', 'expression'); - $text = $this->document->createTextNode(self::phpToXml((string) $value)); - $element->appendChild($text); } else { if (in_array($value, array('null', 'true', 'false'), true)) { $element->setAttribute('type', 'string'); diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/YamlDumper.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/YamlDumper.php index b4748545dc2a7b446583f58b186ea51f826e0248..807e656283b556ce27672591125fc5c6cddde7e7 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/YamlDumper.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Dumper/YamlDumper.php @@ -19,7 +19,6 @@ use Symfony\Component\DependencyInjection\Reference; use Symfony\Component\DependencyInjection\Exception\RuntimeException; use Symfony\Component\DependencyInjection\ContainerBuilder; -use Symfony\Component\ExpressionLanguage\Expression; /** * YamlDumper dumps a service container as a YAML string. @@ -75,10 +74,6 @@ private function addService($id, $definition) $code .= sprintf(" class: %s\n", $definition->getClass()); } - if (!$definition->isPublic()) { - $code .= " public: false\n"; - } - $tagsCode = ''; foreach ($definition->getTags() as $name => $tags) { foreach ($tags as $attributes) { @@ -236,8 +231,6 @@ private function dumpValue($value) return $this->getServiceCall((string) $value, $value); } elseif ($value instanceof Parameter) { return $this->getParameterCall((string) $value); - } elseif ($value instanceof Expression) { - return $this->getExpressionCall((string) $value); } elseif (is_object($value) || is_resource($value)) { throw new RuntimeException('Unable to dump a service container if a parameter is an object or a resource.'); } @@ -274,11 +267,6 @@ private function getParameterCall($id) return sprintf('%%%s%%', $id); } - private function getExpressionCall($expression) - { - return sprintf('@=%s', $expression); - } - /** * Prepares parameters. * diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ExpressionLanguage.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ExpressionLanguage.php deleted file mode 100644 index 2e7edcd32f62fcf4e58a06b689591d38f9c49a96..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ExpressionLanguage.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; - -use Symfony\Component\ExpressionLanguage\ExpressionLanguage as BaseExpressionLanguage; - -/** - * Adds some function to the default ExpressionLanguage. - * - * To get a service, use service('request'). - * To get a parameter, use parameter('kernel.debug'). - * - * @author Fabien Potencier <fabien@symfony.com> - */ -class ExpressionLanguage extends BaseExpressionLanguage -{ - protected function registerFunctions() - { - parent::registerFunctions(); - - $this->register('service', function ($arg) { - return sprintf('$this->get(%s)', $arg); - }, function (array $variables, $value) { - return $variables['container']->get($value); - }); - - $this->register('parameter', function ($arg) { - return sprintf('$this->getParameter(%s)', $arg); - }, function (array $variables, $value) { - return $variables['container']->getParameter($value); - }); - } -} diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Extension/ExtensionInterface.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Extension/ExtensionInterface.php index 424f02088e311c5437824e239211dfb1e9c07bff..fc015e1459b47ace7575d98a0cddd3e709af0905 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Extension/ExtensionInterface.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Extension/ExtensionInterface.php @@ -28,7 +28,7 @@ interface ExtensionInterface * @param array $config An array of configuration values * @param ContainerBuilder $container A ContainerBuilder instance * - * @throws \InvalidArgumentException When provided tag is not defined in this extension + * @throws InvalidArgumentException When provided tag is not defined in this extension * * @api */ diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/LazyProxy/PhpDumper/DumperInterface.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/LazyProxy/PhpDumper/DumperInterface.php index 878d965b1c39de6216cfe3fa970d98cafa54655d..475d26f3a1c64d613a2c026a74f32c14e8fedc78 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/LazyProxy/PhpDumper/DumperInterface.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/LazyProxy/PhpDumper/DumperInterface.php @@ -14,7 +14,7 @@ use Symfony\Component\DependencyInjection\Definition; /** - * Lazy proxy dumper capable of generating the instantiation logic PHP code for proxied services. + * Lazy proxy dumper capable of generating the instantiation logic php code for proxied services. * * @author Marco Pivetta <ocramius@gmail.com> */ diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/PhpFileLoader.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/PhpFileLoader.php index e866a29f7067a7958ac9e75a7878f97eca68632f..f2bf441d25fb2e5c28a13b70f070fc3cf214fc23 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/PhpFileLoader.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/PhpFileLoader.php @@ -17,7 +17,7 @@ * PhpFileLoader loads service definitions from a PHP file. * * The PHP file is required and the $container variable can be - * used within the file to change the container. + * used form the file to change the container. * * @author Fabien Potencier <fabien@symfony.com> */ diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php index 9b2d46d28ef276e780a81e846351af6d07d583b7..9f25ab7683cd2789ba02f495e0cf58dfc6772e71 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php @@ -187,10 +187,6 @@ private function parseDefinition($id, $service, $file) continue; } - if (false !== strpos($name, '-') && false === strpos($name, '_') && !array_key_exists($normalizedName = str_replace('-', '_', $name), $parameters)) { - $parameters[$normalizedName] = SimpleXMLElement::phpize($value); - } - // keep not normalized key for BC too $parameters[$name] = SimpleXMLElement::phpize($value); } @@ -237,11 +233,10 @@ private function processAnonymousServices(SimpleXMLElement $xml, $file) if (false !== $nodes = $xml->xpath('//container:argument[@type="service"][not(@id)]|//container:property[@type="service"][not(@id)]')) { foreach ($nodes as $node) { // give it a unique name - $id = sprintf('%s_%d', hash('sha256', $file), ++$count); - $node['id'] = $id; + $node['id'] = sprintf('%s_%d', md5($file), ++$count); - $definitions[$id] = array($node->service, $file, false); - $node->service['id'] = $id; + $definitions[(string) $node['id']] = array($node->service, $file, false); + $node->service['id'] = (string) $node['id']; } } @@ -249,11 +244,10 @@ private function processAnonymousServices(SimpleXMLElement $xml, $file) if (false !== $nodes = $xml->xpath('//container:services/container:service[not(@id)]')) { foreach ($nodes as $node) { // give it a unique name - $id = sprintf('%s_%d', hash('sha256', $file), ++$count); - $node['id'] = $id; + $node['id'] = sprintf('%s_%d', md5($file), ++$count); - $definitions[$id] = array($node, $file, true); - $node->service['id'] = $id; + $definitions[(string) $node['id']] = array($node, $file, true); + $node->service['id'] = (string) $node['id']; } } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.php index e081be5c2abd732bdf64e7765530c6069213d9cc..ce135fa81f9292a45c5b168259b17eefc6083687 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.php @@ -19,7 +19,6 @@ use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException; use Symfony\Component\Config\Resource\FileResource; use Symfony\Component\Yaml\Parser as YamlParser; -use Symfony\Component\ExpressionLanguage\Expression; /** * YamlFileLoader loads YAML files service definitions. @@ -225,8 +224,8 @@ private function parseDefinition($id, $service, $file) unset($tag['name']); foreach ($tag as $attribute => $value) { - if (!is_scalar($value) && null !== $value) { - throw new InvalidArgumentException(sprintf('A "tags" attribute must be of a scalar-type for service "%s", tag "%s", attribute "%s" in %s.', $id, $name, $attribute, $file)); + if (!is_scalar($value)) { + throw new InvalidArgumentException(sprintf('A "tags" attribute must be of a scalar-type for service "%s", tag "%s" in %s.', $id, $name, $file)); } } @@ -312,8 +311,6 @@ private function resolveServices($value) { if (is_array($value)) { $value = array_map(array($this, 'resolveServices'), $value); - } elseif (is_string($value) && 0 === strpos($value, '@=')) { - return new Expression(substr($value, 2)); } elseif (is_string($value) && 0 === strpos($value, '@')) { if (0 === strpos($value, '@@')) { $value = substr($value, 1); diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/schema/dic/services/services-1.0.xsd b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/schema/dic/services/services-1.0.xsd index f7b578767bb5ad8abd8eca329ba2d1f74002fd46..f1c2003c62258909fdcfc7ddf848f95ac252e622 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/schema/dic/services/services-1.0.xsd +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Loader/schema/dic/services/services-1.0.xsd @@ -121,12 +121,10 @@ <xsd:complexType name="property" mixed="true"> <xsd:choice minOccurs="0" maxOccurs="1"> - <xsd:element name="property" type="property" minOccurs="0" maxOccurs="unbounded" /> <xsd:element name="service" type="service" /> </xsd:choice> <xsd:attribute name="type" type="argument_type" /> <xsd:attribute name="id" type="xsd:string" /> - <xsd:attribute name="key" type="xsd:string" /> <xsd:attribute name="name" type="xsd:string" /> <xsd:attribute name="on-invalid" type="xsd:string" /> <xsd:attribute name="strict" type="boolean" /> @@ -166,7 +164,6 @@ <xsd:restriction base="xsd:string"> <xsd:enumeration value="collection" /> <xsd:enumeration value="service" /> - <xsd:enumeration value="expression" /> <xsd:enumeration value="string" /> <xsd:enumeration value="constant" /> </xsd:restriction> diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php index dabd1c6215673ca199709ae0c4269e7768d4b0aa..494d231e9f29fb3079680ce149a6e2db82a62d5a 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php @@ -24,8 +24,8 @@ */ class ParameterBag implements ParameterBagInterface { - protected $parameters = array(); - protected $resolved = false; + protected $parameters; + protected $resolved; /** * Constructor. @@ -36,7 +36,9 @@ class ParameterBag implements ParameterBagInterface */ public function __construct(array $parameters = array()) { + $this->parameters = array(); $this->add($parameters); + $this->resolved = false; } /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/README.md b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/README.md index 29d1cd0aa0c5d73773eb879f890cc16d3ab3eded..ab67595240401c8d9f26ae85dd545445c9acf9bb 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/README.md +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/README.md @@ -69,5 +69,5 @@ Resources You can run the unit tests with the following command: $ cd path/to/Symfony/Component/DependencyInjection/ - $ composer.phar install + $ composer.phar install --dev $ phpunit diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Reference.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Reference.php index 725747055c1dfa8b8b04f31513e9a22b46a23dc9..1517da29885a7a1c503c89f5b28dfdc2b75189f0 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Reference.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Reference.php @@ -47,7 +47,7 @@ public function __construct($id, $invalidBehavior = ContainerInterface::EXCEPTIO */ public function __toString() { - return $this->id; + return (string) $this->id; } /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/SimpleXMLElement.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/SimpleXMLElement.php index db855f66d1e89e19ea7d09c929df47296f5c70b7..cc5e31198715158cc8d4c79afb33a9a9906e1333 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/SimpleXMLElement.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/SimpleXMLElement.php @@ -12,7 +12,6 @@ namespace Symfony\Component\DependencyInjection; use Symfony\Component\Config\Util\XmlUtils; -use Symfony\Component\ExpressionLanguage\Expression; /** * SimpleXMLElement class. @@ -22,7 +21,7 @@ class SimpleXMLElement extends \SimpleXMLElement { /** - * Converts an attribute as a PHP type. + * Converts an attribute as a php type. * * @param string $name * @@ -34,7 +33,7 @@ public function getAttributeAsPhp($name) } /** - * Returns arguments as valid PHP types. + * Returns arguments as valid php types. * * @param string $name * @param Boolean $lowercase @@ -78,9 +77,6 @@ public function getArgumentsAsPhp($name, $lowercase = true) $arguments[$key] = new Reference((string) $arg['id'], $invalidBehavior, $strict); break; - case 'expression': - $arguments[$key] = new Expression((string) $arg); - break; case 'collection': $arguments[$key] = $arg->getArgumentsAsPhp($name, false); break; @@ -99,7 +95,7 @@ public function getArgumentsAsPhp($name, $lowercase = true) } /** - * Converts an xml value to a PHP type. + * Converts an xml value to a php type. * * @param mixed $value * diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php index b5e49842e7af4e9df575759ff9dd5452ca78eb4e..06845a2b86d3262236d9a6fd1627a0714a352504 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php @@ -18,7 +18,7 @@ class CheckDefinitionValidityPassTest extends \PHPUnit_Framework_TestCase { /** - * @expectedException \Symfony\Component\DependencyInjection\Exception\RuntimeException + * @expectedException \RuntimeException */ public function testProcessDetectsSyntheticNonPublicDefinitions() { @@ -29,7 +29,7 @@ public function testProcessDetectsSyntheticNonPublicDefinitions() } /** - * @expectedException \Symfony\Component\DependencyInjection\Exception\RuntimeException + * @expectedException \RuntimeException */ public function testProcessDetectsSyntheticPrototypeDefinitions() { @@ -40,7 +40,7 @@ public function testProcessDetectsSyntheticPrototypeDefinitions() } /** - * @expectedException \Symfony\Component\DependencyInjection\Exception\RuntimeException + * @expectedException \RuntimeException */ public function testProcessDetectsNonSyntheticNonAbstractDefinitionWithoutClass() { @@ -61,28 +61,6 @@ public function testProcess() $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(); diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Compiler/InlineServiceDefinitionsPassTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Compiler/InlineServiceDefinitionsPassTest.php index 6458a335d8911eacf17faaec798503df5b4042ae..f22f0da9f877e62e3e0c6d186f8fe47159f3b439 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Compiler/InlineServiceDefinitionsPassTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Compiler/InlineServiceDefinitionsPassTest.php @@ -12,8 +12,10 @@ 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\Compiler; use Symfony\Component\DependencyInjection\Compiler\RepeatedPass; use Symfony\Component\DependencyInjection\Compiler\InlineServiceDefinitionsPass; use Symfony\Component\DependencyInjection\Reference; @@ -124,41 +126,6 @@ public function testProcessInlinesOnlyIfSameScope() $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())); diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php index dd08c97c114ecc85440d8dba490e36c2b5bfef7b..a5e7531b68af082cc5fc591c7ac830f89b6a88a8 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php @@ -21,12 +21,10 @@ use Symfony\Component\DependencyInjection\ContainerInterface; use Symfony\Component\DependencyInjection\Definition; use Symfony\Component\DependencyInjection\Exception\RuntimeException; -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 { @@ -379,15 +377,6 @@ public function testCreateSyntheticService() $builder->get('foo'); } - public function testCreateServiceWithExpression() - { - $builder = new ContainerBuilder(); - $builder->setParameter('bar', 'bar'); - $builder->register('bar', 'BarClass'); - $builder->register('foo', '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 */ @@ -397,7 +386,6 @@ public function testResolveServices() $builder->register('foo', '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'); } /** @@ -415,6 +403,7 @@ public function testMerge() $container->setResourceTracking(false); $config = new ContainerBuilder(new ParameterBag(array('foo' => '%bar%'))); $container->merge($config); +////// FIXME $container->compile(); $this->assertEquals(array('bar' => 'foo', 'foo' => 'foo'), $container->getParameterBag()->all(), '->merge() evaluates the values of the parameters towards already defined ones'); @@ -422,6 +411,7 @@ public function testMerge() $container->setResourceTracking(false); $config = new ContainerBuilder(new ParameterBag(array('foo' => '%bar%', 'baz' => '%foo%'))); $container->merge($config); +////// FIXME $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'); @@ -449,7 +439,7 @@ public function testMerge() /** * @covers Symfony\Component\DependencyInjection\ContainerBuilder::merge - * @expectedException \LogicException + * @expectedException LogicException */ public function testMergeLogicException() { @@ -497,6 +487,10 @@ public function testFindDefinition() */ public function testAddObjectResource() { + if (!class_exists('Symfony\Component\Config\Resource\FileResource')) { + $this->markTestSkipped('The "Config" component is not available'); + } + $container = new ContainerBuilder(); $container->setResourceTracking(false); @@ -523,6 +517,10 @@ public function testAddObjectResource() */ public function testAddClassResource() { + if (!class_exists('Symfony\Component\Config\Resource\FileResource')) { + $this->markTestSkipped('The "Config" component is not available'); + } + $container = new ContainerBuilder(); $container->setResourceTracking(false); @@ -549,6 +547,10 @@ public function testAddClassResource() */ public function testCompilesClassDefinitionsOfLazyServices() { + if (!class_exists('Symfony\Component\Config\Resource\FileResource')) { + $this->markTestSkipped('The "Config" component is not available'); + } + $container = new ContainerBuilder(); $this->assertEmpty($container->getResources(), 'No resources get registered without resource tracking'); @@ -575,6 +577,10 @@ function (ResourceInterface $resource) use ($classesPath) { */ public function testResources() { + if (!class_exists('Symfony\Component\Config\Resource\FileResource')) { + $this->markTestSkipped('The "Config" component is not available'); + } + $container = new ContainerBuilder(); $container->addResource($a = new FileResource(__DIR__.'/Fixtures/xml/services1.xml')); $container->addResource($b = new FileResource(__DIR__.'/Fixtures/xml/services2.xml')); @@ -649,7 +655,7 @@ public function testPrivateServiceUser() } /** - * @expectedException \BadMethodCallException + * @expectedException BadMethodCallException */ public function testThrowsExceptionWhenSetServiceOnAFrozenContainer() { @@ -661,10 +667,14 @@ public function testThrowsExceptionWhenSetServiceOnAFrozenContainer() } /** - * @expectedException \BadMethodCallException + * @expectedException BadMethodCallException */ public function testThrowsExceptionWhenAddServiceOnAFrozenContainer() { + if (!class_exists('Symfony\Component\Config\Resource\FileResource')) { + $this->markTestSkipped('The "Config" component is not available'); + } + $container = new ContainerBuilder(); $container->compile(); $container->set('a', new \stdClass()); @@ -672,6 +682,10 @@ public function testThrowsExceptionWhenAddServiceOnAFrozenContainer() public function testNoExceptionWhenSetSyntheticServiceOnAFrozenContainer() { + if (!class_exists('Symfony\Component\Config\Resource\FileResource')) { + $this->markTestSkipped('The "Config" component is not available'); + } + $container = new ContainerBuilder(); $def = new Definition('stdClass'); $def->setSynthetic(true); @@ -728,7 +742,7 @@ public function testSynchronizedServiceWithScopes() } /** - * @expectedException \BadMethodCallException + * @expectedException BadMethodCallException */ public function testThrowsExceptionWhenSetDefinitionOnAFrozenContainer() { @@ -759,39 +773,6 @@ public function testExtensionConfig() $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->assertEquals(true, $classInList); - } } class FooClass {} diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/ContainerTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/ContainerTest.php index e145c7a10c1aa5b983f21625a472291f77c19a72..6c49982bea6c0510240c3fd5779f284cafd8e658 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/ContainerTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/ContainerTest.php @@ -51,7 +51,6 @@ public function dataForTestCamelize() array('.foo', '_Foo'), array('foo_', 'Foo'), array('foo.', 'Foo_'), - array('foo\bar', 'Foo_Bar'), ); } @@ -188,7 +187,6 @@ public function testGet() $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()'); @@ -260,7 +258,6 @@ public function testHas() $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'); } /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/CrossCheckTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/CrossCheckTest.php index 692d73dbcdc2e0b627a8481cd74b5ba40e932522..3464a6af3c66eb8fa24e3f0d768e9fb6af277a7a 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/CrossCheckTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/CrossCheckTest.php @@ -18,6 +18,13 @@ class CrossCheckTest extends \PHPUnit_Framework_TestCase { protected static $fixturesPath; + protected function setUp() + { + if (!class_exists('Symfony\Component\Config\Loader\Loader')) { + $this->markTestSkipped('The "Config" component is not available'); + } + } + public static function setUpBeforeClass() { self::$fixturesPath = __DIR__.'/Fixtures/'; diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/DefinitionDecoratorTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/DefinitionDecoratorTest.php index a266e9b31a4e07bfad204ecd2b87486d219edbc2..8be8b64230ef2166e2df9ffeed70c55dcc93de82 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/DefinitionDecoratorTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/DefinitionDecoratorTest.php @@ -81,7 +81,7 @@ public function testSetArgument() } /** - * @expectedException \InvalidArgumentException + * @expectedException InvalidArgumentException */ public function testReplaceArgumentShouldRequireIntegerIndex() { @@ -106,7 +106,7 @@ public function testReplaceArgument() } /** - * @expectedException \OutOfBoundsException + * @expectedException OutOfBoundsException */ public function testGetArgumentShouldCheckBounds() { diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/DefinitionTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/DefinitionTest.php index 4ffd7c079267a81178db7bfa5c8cc50e4d7ee7ca..d41c6a8e2b2aecd5cb624dedb29a2d339a200966 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/DefinitionTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/DefinitionTest.php @@ -275,7 +275,7 @@ public function testSetArgument() } /** - * @expectedException \OutOfBoundsException + * @expectedException OutOfBoundsException */ public function testGetArgumentShouldCheckBounds() { @@ -286,7 +286,7 @@ public function testGetArgumentShouldCheckBounds() } /** - * @expectedException \OutOfBoundsException + * @expectedException OutOfBoundsException */ public function testReplaceArgumentShouldCheckBounds() { diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php index 98b05d2501ee06522e751f26478042dd981e342e..8bd31b076c398094a75ba910ac3c1432b3c94d5d 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php @@ -31,7 +31,7 @@ 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'); + $this->assertStringEqualsFile(self::$fixturesPath.'/php/services1-1.php', $dumper->dump(array('class' => 'Container', 'base_class' => 'AbstractContainer')), '->dump() takes a class and a base_class options'); $container = new ContainerBuilder(); new PhpDumper($container); @@ -81,7 +81,7 @@ public function testDumpOptimizationString() } /** - * @expectedException \InvalidArgumentException + * @expectedException InvalidArgumentException */ public function testExportParameters() { @@ -121,7 +121,7 @@ public function testAddService() } /** - * @expectedException \InvalidArgumentException + * @expectedException InvalidArgumentException * @expectedExceptionMessage Service id "bar$" cannot be converted to a valid PHP method name. */ public function testAddServiceInvalidServiceId() @@ -181,19 +181,4 @@ public function testOverrideServiceWhenUsingADumpedContainerAndServiceIsUsedFrom $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/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Dumper/YamlDumperTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Dumper/YamlDumperTest.php index f9747a7c2fae963dd3a8a780046fbda018359081..ca7aec054e48174ff6eecbc6b8b5cd8be628bfc3 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Dumper/YamlDumperTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Dumper/YamlDumperTest.php @@ -18,6 +18,13 @@ class YamlDumperTest extends \PHPUnit_Framework_TestCase { protected static $fixturesPath; + protected function setUp() + { + if (!class_exists('Symfony\Component\Yaml\Yaml')) { + $this->markTestSkipped('The "Yaml" component is not available'); + } + } + public static function setUpBeforeClass() { self::$fixturesPath = realpath(__DIR__.'/../Fixtures/'); diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/container9.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/container9.php index 19882c0211c3e6cd3288d794e3600023e22791ac..6abe5e2a917f2a556405f69b36cf685a1f4105e7 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/container9.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/container9.php @@ -6,7 +6,6 @@ use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Reference; use Symfony\Component\DependencyInjection\Parameter; -use Symfony\Component\ExpressionLanguage\Expression; $container = new ContainerBuilder(); $container-> @@ -16,7 +15,7 @@ setFactoryClass('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%')))-> + setProperties(array('foo' => 'bar', 'moo' => new Reference('foo.baz')))-> addMethodCall('setBar', array(new Reference('bar')))-> addMethodCall('initialize')-> setConfigurator('sc_configure') @@ -51,8 +50,7 @@ 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() ~ parameter("foo")'))) + addMethodCall('setBar', array(new Reference('foobaz', ContainerInterface::IGNORE_ON_INVALID_REFERENCE))) ; $container-> register('factory_service', 'Bar')-> diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/includes/classes.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/includes/classes.php index 70c3d275b889835a94f8ba84403e7335862050c2..48e1c2c84e12dbe0643007ee0cdbf678f2e8b716 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/includes/classes.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/includes/classes.php @@ -8,7 +8,6 @@ function sc_configure($instance) class BarClass { protected $baz; - public $foo = 'foo'; public function setBaz(BazClass $baz) { diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services1.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services1.php index 084e7891af906945e5812934c04f748a66f04fe0..bc093efe7b7724cc3e080f1ad05e07d117f031a3 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services1.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services1.php @@ -6,6 +6,8 @@ use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException; use Symfony\Component\DependencyInjection\Exception\LogicException; use Symfony\Component\DependencyInjection\Exception\RuntimeException; +use Symfony\Component\DependencyInjection\Reference; +use Symfony\Component\DependencyInjection\Parameter; use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag; /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services10.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services10.php index d1f9c0d1664cb1dbfd0511ec6942d5ec7a28f954..8796df8ae53957c5db307a168e78aecdf3bc5d27 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services10.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services10.php @@ -6,6 +6,8 @@ use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException; use Symfony\Component\DependencyInjection\Exception\LogicException; use Symfony\Component\DependencyInjection\Exception\RuntimeException; +use Symfony\Component\DependencyInjection\Reference; +use Symfony\Component\DependencyInjection\Parameter; use Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag; /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services8.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services8.php index f922d2000c7ed11ac387f2690ee0698ef3ae3df4..77712e8297d171d1ac3b1d2a5a4880284c4ca0d2 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services8.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services8.php @@ -6,6 +6,8 @@ use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException; use Symfony\Component\DependencyInjection\Exception\LogicException; use Symfony\Component\DependencyInjection\Exception\RuntimeException; +use Symfony\Component\DependencyInjection\Reference; +use Symfony\Component\DependencyInjection\Parameter; use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag; /** diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9.php index 3fafcf175735160a7862840b730ab625cb44fc68..9361a0e87c5ad585aba772b43bd067e416d27ebf 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9.php @@ -6,6 +6,8 @@ use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException; use Symfony\Component\DependencyInjection\Exception\LogicException; use Symfony\Component\DependencyInjection\Exception\RuntimeException; +use Symfony\Component\DependencyInjection\Reference; +use Symfony\Component\DependencyInjection\Parameter; use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag; /** @@ -123,7 +125,6 @@ protected function getFooService() $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; @@ -197,7 +198,6 @@ protected function getMethodCall1Service() if ($this->has('foobaz')) { $instance->setBar($this->get('foobaz', ContainerInterface::NULL_ON_INVALID_REFERENCE)); } - $instance->setBar(($this->get("foo")->foo() . $this->getParameter("foo"))); return $instance; } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9_compiled.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9_compiled.php index c4b8e47586f9218f6abd62873373e9a9ee7dc43a..b60cbff8e8bbe57679baaa7828c0cf5d1b7a7847 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9_compiled.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9_compiled.php @@ -6,6 +6,8 @@ use Symfony\Component\DependencyInjection\Exception\InvalidArgumentException; use Symfony\Component\DependencyInjection\Exception\LogicException; use Symfony\Component\DependencyInjection\Exception\RuntimeException; +use Symfony\Component\DependencyInjection\Reference; +use Symfony\Component\DependencyInjection\Parameter; use Symfony\Component\DependencyInjection\ParameterBag\FrozenParameterBag; /** @@ -131,7 +133,6 @@ protected function getFooService() $instance->initialize(); $instance->foo = 'bar'; $instance->moo = $a; - $instance->qux = array('bar' => 'foo is bar', 'foobar' => 'bar'); sc_configure($instance); return $instance; @@ -202,7 +203,6 @@ protected function getMethodCall1Service() $instance->setBar($this->get('foo')); $instance->setBar(NULL); - $instance->setBar(($this->get("foo")->foo() . $this->getParameter("foo"))); return $instance; } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services10.xml b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services10.xml deleted file mode 100644 index a4da1bf74cf7852c64efd012d760ab1c3a17c1cf..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/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/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services2.xml b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services2.xml index 43cf86c54751a340a79d85c8c3278a23800c4a66..6e8a6ce364dceb9bb4d176250473a12cd960c60e 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services2.xml +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services2.xml @@ -27,6 +27,5 @@ <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/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services6.xml b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services6.xml index ffc038234fae3eb9af756f8b8279a062401f06e8..abd9fbc1529b14482bca8cd1a31286c8f75f7226 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services6.xml +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services6.xml @@ -32,9 +32,6 @@ </service> <service id="method_call1" class="FooClass"> <call method="setBar" /> - <call method="setBar"> - <argument type="expression">service("foo").foo() ~ parameter("foo")</argument> - </call> </service> <service id="method_call2" class="FooClass"> <call method="setBar"> diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services9.xml b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services9.xml index e53b03ed70913f03d00da42c8cb585080bedb83b..cb3a1f69ded5b01eee87f44c95e7eb22282108a5 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services9.xml +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/services9.xml @@ -19,10 +19,6 @@ <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> @@ -53,9 +49,6 @@ <call method="setBar"> <argument type="service" id="foobaz" on-invalid="ignore"/> </call> - <call method="setBar"> - <argument type="expression">service("foo").foo() ~ parameter("foo")</argument> - </call> </service> <service id="factory_service" class="Bar" factory-method="getInstance" factory-service="foo.baz"/> <service id="foo_with_inline" class="Foo"> diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/badtag3.yml b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/badtag3.yml index 72ec4e8f0bc6f72b5145bf775e512fe69812b88a..8137fab63fc0a4f1f7667fe03adbfa00a715bc35 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/badtag3.yml +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/badtag3.yml @@ -3,4 +3,4 @@ services: class: FooClass tags: # tag-attribute is not a scalar - - { name: foo, bar: { foo: foo, bar: bar } } + - { name: foo, foo: { foo: foo, bar: bar } } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/services6.yml b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/services6.yml index d3c793f2e31c3e1c9ac9c0f60f1f0f1c941c9259..7ba9453bdd6dd7b6108a7bf71225defd426eff2b 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/services6.yml +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/services6.yml @@ -15,7 +15,6 @@ services: calls: - [ setBar, [] ] - [ setBar ] - - [ setBar, ['@=service("foo").foo() ~ parameter("foo")'] ] method_call2: class: FooClass calls: diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/services9.yml b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/services9.yml index 6de64ee4639667008b100b1236a3f23b8a0f39f0..6a4c3d5d97a033c664f964316fa933a3c46df457 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/services9.yml +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/services9.yml @@ -12,7 +12,7 @@ services: factory_class: 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%' } } + properties: { foo: bar, moo: '@foo.baz' } calls: - [setBar, ['@bar']] - [initialize, { }] @@ -38,7 +38,6 @@ services: - [setBar, ['@?foo2']] - [setBar, ['@?foo3']] - [setBar, ['@?foobaz']] - - [setBar, ['@=service("foo").foo() ~ parameter("foo")']] factory_service: class: Bar @@ -51,7 +50,6 @@ services: inlined: class: Bar - public: false properties: { pub: pub } calls: - [setBaz, ['@baz']] diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/ClosureLoaderTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/ClosureLoaderTest.php index 483e30b78b81877ed877d5df47aac9f204cba376..33594d640cf6bc590525246cc8d80f606616e336 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/ClosureLoaderTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/ClosureLoaderTest.php @@ -16,6 +16,13 @@ class ClosureLoaderTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\Config\Loader\Loader')) { + $this->markTestSkipped('The "Config" component is not available'); + } + } + /** * @covers Symfony\Component\DependencyInjection\Loader\ClosureLoader::supports */ diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/IniFileLoaderTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/IniFileLoaderTest.php index b9f402b70189f7aac1908d93dcbde5af5e3ed540..220ad7fe4d871cd025944bf74d2b40c24e49a434 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/IniFileLoaderTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/IniFileLoaderTest.php @@ -29,6 +29,10 @@ public static function setUpBeforeClass() protected function setUp() { + if (!class_exists('Symfony\Component\Config\Loader\Loader')) { + $this->markTestSkipped('The "Config" component is not available'); + } + $this->container = new ContainerBuilder(); $this->loader = new IniFileLoader($this->container, new FileLocator(self::$fixturesPath.'/ini')); } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/PhpFileLoaderTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/PhpFileLoaderTest.php index 505f710cbeb1ac31cdfe9f3400d5e10c1f8dd962..3a97dc27da5eb52a5a4fda3c007d5e2ecec31c5f 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/PhpFileLoaderTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/PhpFileLoaderTest.php @@ -18,6 +18,13 @@ class PhpFileLoaderTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\Config\Loader\Loader')) { + $this->markTestSkipped('The "Config" component is not available'); + } + } + /** * @covers Symfony\Component\DependencyInjection\Loader\PhpFileLoader::supports */ diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php index 74db3c8eff5d45188a94e07aac8cc204b28136a7..d8138f947541ad7fd314bdabe59305cca9987068 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php @@ -22,12 +22,18 @@ 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; + protected function setUp() + { + if (!class_exists('Symfony\Component\Config\Loader\Loader')) { + $this->markTestSkipped('The "Config" component is not available'); + } + } + public static function setUpBeforeClass() { self::$fixturesPath = realpath(__DIR__.'/../Fixtures/'); @@ -93,33 +99,17 @@ public function testLoadParameters() $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'), - ), - 'foo_bar' => new Reference('foo_bar'), - 'mixedcase' => array('MixedCaseKey' => 'value'), - 'constant' => PHP_EOL, - ); + $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')), 'foo_bar' => new Reference('foo_bar'), 'mixedcase' => array('MixedCaseKey' => 'value')); $this->assertEquals($expected, $actual, '->load() converts XML values to PHP ones'); } public function testLoadImports() { + if (!class_exists('Symfony\Component\Yaml\Yaml')) { + $this->markTestSkipped('The "Yaml" component is not available'); + } + $container = new ContainerBuilder(); $resolver = new LoaderResolver(array( new IniFileLoader($container, new FileLocator(self::$fixturesPath.'/xml')), @@ -130,30 +120,7 @@ public function testLoadImports() $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'), - ), - 'foo_bar' => new Reference('foo_bar'), - 'mixedcase' => array('MixedCaseKey' => 'value'), - 'constant' => PHP_EOL, - 'bar' => '%foo%', - 'imported_from_ini' => true, - 'imported_from_yaml' => true - ); + $expected = array('a string', 'foo' => 'bar', 'values' => array(true, false), 'foo_bar' => new Reference('foo_bar'), 'mixedcase' => array('MixedCaseKey' => 'value'), 'bar' => '%foo%', 'imported_from_ini' => true, 'imported_from_yaml' => true); $this->assertEquals(array_keys($expected), array_keys($actual), '->load() imports and merges imported files'); @@ -212,7 +179,7 @@ public function testLoadServices() $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() ~ parameter("foo")')))), $services['method_call1']->getMethodCalls(), '->load() parses the method_call tag'); + $this->assertEquals(array(array('setBar', array())), $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->assertNull($services['factory_service']->getClass()); $this->assertEquals('getInstance', $services['factory_service']->getFactoryMethod()); @@ -231,29 +198,6 @@ public function testLoadServices() $this->assertFalse($aliases['another_alias_for_foo']->isPublic()); } - 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"); diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php index c7cb0cde5f01b048f081e503b2bed36248f3be42..e452e5d221d196ae61b161455899d71b8162796f 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php @@ -20,12 +20,22 @@ use Symfony\Component\DependencyInjection\Loader\IniFileLoader; 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; + protected function setUp() + { + if (!class_exists('Symfony\Component\Config\Loader\Loader')) { + $this->markTestSkipped('The "Config" component is not available'); + } + + if (!class_exists('Symfony\Component\Yaml\Yaml')) { + $this->markTestSkipped('The "Yaml" component is not available'); + } + } + public static function setUpBeforeClass() { self::$fixturesPath = realpath(__DIR__.'/../Fixtures/'); @@ -114,7 +124,7 @@ public function testLoadServices() $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() ~ parameter("foo")')))), $services['method_call1']->getMethodCalls(), '->load() parses the method_call tag'); + $this->assertEquals(array(array('setBar', array()), array('setBar', array())), $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('baz_factory', $services['factory_service']->getFactoryService()); @@ -199,7 +209,7 @@ public function testTagWithAttributeArrayThrowsException() $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'); + $this->assertStringStartsWith('A "tags" attribute must be of a scalar-type for service ', $e->getMessage(), '->load() throws an InvalidArgumentException if a tag-attribute is not a scalar'); } } } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/composer.json b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/composer.json index 1a29489d2bafde3f36d3beba22331cf28460f8ed..2631da96df2f877d8164989e227f60c03201b77e 100644 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/composer.json +++ b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/composer.json @@ -20,8 +20,7 @@ }, "require-dev": { "symfony/yaml": "~2.0", - "symfony/config": "~2.2", - "symfony/expression-language": "~2.4" + "symfony/config": "~2.2" }, "suggest": { "symfony/yaml": "", @@ -35,7 +34,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } } } diff --git a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/services10.xml b/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/services10.xml deleted file mode 100644 index 824d8b5d753969de96af6c55f6d0a153b3fc2c5b..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/services10.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/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Event.php b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Event.php index e25e7f1ebae42902adc7e1fe6f11646be968c32c..42f09eaa5118e30b49c4af3160fd21a762b7d3b6 100644 --- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Event.php +++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Event.php @@ -76,8 +76,6 @@ public function stopPropagation() * * @param EventDispatcherInterface $dispatcher * - * @deprecated Deprecated in 2.4, to be removed in 3.0. The event dispatcher is passed to the listener call. - * * @api */ public function setDispatcher(EventDispatcherInterface $dispatcher) @@ -90,8 +88,6 @@ public function setDispatcher(EventDispatcherInterface $dispatcher) * * @return EventDispatcherInterface * - * @deprecated Deprecated in 2.4, to be removed in 3.0. The event dispatcher is passed to the listener call. - * * @api */ public function getDispatcher() @@ -104,8 +100,6 @@ public function getDispatcher() * * @return string * - * @deprecated Deprecated in 2.4, to be removed in 3.0. The event name is passed to the listener call. - * * @api */ public function getName() @@ -118,8 +112,6 @@ public function getName() * * @param string $name The event name. * - * @deprecated Deprecated in 2.4, to be removed in 3.0. The event name is passed to the listener call. - * * @api */ public function setName($name) diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcher.php b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcher.php index ad48d4311d8e6979d63617fbecd8871e42f71564..eb1fb5949efbba0bf5baac46ee6e5dc3b699d9ec 100644 --- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcher.php +++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/EventDispatcher.php @@ -154,14 +154,14 @@ public function removeSubscriber(EventSubscriberInterface $subscriber) * This method can be overridden to add functionality that is executed * for each listener. * - * @param callable[] $listeners The event listeners. - * @param string $eventName The name of the event to dispatch. - * @param Event $event The event object to pass to the event handlers/listeners. + * @param array[callback] $listeners The event listeners. + * @param string $eventName The name of the event to dispatch. + * @param Event $event The event object to pass to the event handlers/listeners. */ protected function doDispatch($listeners, $eventName, Event $event) { foreach ($listeners as $listener) { - call_user_func($listener, $event, $eventName, $this); + call_user_func($listener, $event); if ($event->isPropagationStopped()) { break; } diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/GenericEvent.php b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/GenericEvent.php index c226fdf2e599b8d4a556bcf1c2d2819610579e16..3a5efcfecc262c3d96efe28427615422c5dd13e2 100644 --- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/GenericEvent.php +++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/GenericEvent.php @@ -21,7 +21,7 @@ class GenericEvent extends Event implements \ArrayAccess, \IteratorAggregate { /** - * Event subject. + * Observer pattern subject. * * @var mixed usually object or callable */ diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/README.md b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/README.md index 22bf74fdc9d66f38a250218276cc6d0b492806ce..11f6b1888e3953da7c2baaf3068a08784ac31ac1 100644 --- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/README.md +++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/README.md @@ -1,8 +1,8 @@ EventDispatcher Component ========================= -The Symfony2 EventDispatcher component implements the Mediator pattern in a -simple and effective way to make your projects truly extensible. +EventDispatcher implements a lightweight version of the Observer design +pattern. use Symfony\Component\EventDispatcher\EventDispatcher; use Symfony\Component\EventDispatcher\Event; @@ -21,5 +21,5 @@ Resources You can run the unit tests with the following command: $ cd path/to/Symfony/Component/EventDispatcher/ - $ composer.phar install + $ composer.phar install --dev $ phpunit diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/ContainerAwareEventDispatcherTest.php b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/ContainerAwareEventDispatcherTest.php index 965a0c6bcfb5c0c4346afab39dcf7c0a4ff66d4a..71f3ad05215ecdf15117050fef95b6d3e2e75ea6 100644 --- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/ContainerAwareEventDispatcherTest.php +++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/ContainerAwareEventDispatcherTest.php @@ -19,6 +19,13 @@ class ContainerAwareEventDispatcherTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\DependencyInjection\Container')) { + $this->markTestSkipped('The "DependencyInjection" component is not available'); + } + } + public function testAddAListenerService() { $event = new Event(); diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php index 50af44549b0c392cde33ecfdfaf2a011c217113e..ad7e4484541b3b0e9ebd6612fe4e0bd50d835ab5 100644 --- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php +++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php @@ -23,9 +23,6 @@ class EventDispatcherTest extends \PHPUnit_Framework_TestCase const preBar = 'pre.bar'; const postBar = 'post.bar'; - /** - * @var EventDispatcher - */ private $dispatcher; private $listener; @@ -240,6 +237,7 @@ public function testRemoveSubscriberWithMultipleListeners() public function testEventReceivesTheDispatcherInstance() { + $test = $this; $this->dispatcher->addListener('test', function ($event) use (&$dispatcher) { $dispatcher = $event->getDispatcher(); }); @@ -247,17 +245,6 @@ public function testEventReceivesTheDispatcherInstance() $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 * @@ -270,7 +257,7 @@ public function testWorkaroundForPhpBug62976() { $dispatcher = new EventDispatcher(); $dispatcher->addListener('bug.62976', new CallableClass()); - $dispatcher->removeListener('bug.62976', function () {}); + $dispatcher->removeListener('bug.62976', function() {}); $this->assertTrue($dispatcher->hasListeners('bug.62976')); } } @@ -302,18 +289,6 @@ public function postFoo(Event $e) } } -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() diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventTest.php b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventTest.php index 7a20fe6bf3a41f7c3f5031ebc7d1b9047f2a4711..52aa9ad68a8f431320f23210fb7d87343b56c38f 100644 --- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventTest.php +++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/EventTest.php @@ -35,7 +35,7 @@ class EventTest extends \PHPUnit_Framework_TestCase */ protected function setUp() { - $this->event = new Event(); + $this->event = new Event; $this->dispatcher = new EventDispatcher(); } @@ -46,7 +46,7 @@ protected function setUp() protected function tearDown() { $this->event = null; - $this->dispatcher = null; + $this->eventDispatcher = null; } public function testIsPropagationStopped() diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/GenericEventTest.php b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/GenericEventTest.php index c1e22f4451365139d2f6d5be0a932478c4288b51..8dd6f5b419acca67b20521ad694cde5fec6f5821 100644 --- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/GenericEventTest.php +++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/Tests/GenericEventTest.php @@ -33,7 +33,7 @@ protected function setUp() { parent::setUp(); - $this->subject = new \stdClass(); + $this->subject = new \StdClass(); $this->event = new GenericEvent($this->subject, array('name' => 'Event'), 'foo'); } diff --git a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/composer.json b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/composer.json index e748c506c1883db2a0a39210e43dd68309ed6117..1db2ecfd6c8709d0f1dd06369224851ed9682d61 100644 --- a/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/composer.json +++ b/core/vendor/symfony/event-dispatcher/Symfony/Component/EventDispatcher/composer.json @@ -32,7 +32,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/AcceptHeaderItem.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/AcceptHeaderItem.php index 0cec4eda1317fcd79818bd3064983279bd7d662a..9d4c3132d32e88d4dcddf03c75869992c01d7d1c 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/AcceptHeaderItem.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/AcceptHeaderItem.php @@ -90,7 +90,7 @@ public function __toString() { $string = $this->value.($this->quality < 1 ? ';q='.$this->quality : ''); if (count($this->attributes) > 0) { - $string .= ';'.implode(';', array_map(function ($name, $value) { + $string .= ';'.implode(';', array_map(function($name, $value) { return sprintf(preg_match('/[,;=]/', $value) ? '%s="%s"' : '%s=%s', $name, $value); }, array_keys($this->attributes), $this->attributes)); } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/BinaryFileResponse.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/BinaryFileResponse.php index 4d2743580727957c9486dd37a96776abe6073b57..06d530ddf833cf53f751b36a4a0113f8ea8dc13d 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/BinaryFileResponse.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/BinaryFileResponse.php @@ -34,13 +34,13 @@ class BinaryFileResponse extends Response /** * Constructor. * - * @param \SplFileInfo|string $file The file to stream - * @param integer $status The response status code - * @param array $headers An array of response headers - * @param boolean $public Files are public by default - * @param null|string $contentDisposition The type of Content-Disposition to set automatically with the filename - * @param boolean $autoEtag Whether the ETag header should be automatically set - * @param boolean $autoLastModified Whether the Last-Modified header should be automatically set + * @param SplFileInfo|string $file The file to stream + * @param integer $status The response status code + * @param array $headers An array of response headers + * @param boolean $public Files are public by default + * @param null|string $contentDisposition The type of Content-Disposition to set automatically with the filename + * @param boolean $autoEtag Whether the ETag header should be automatically set + * @param boolean $autoLastModified Whether the Last-Modified header should be automatically set */ public function __construct($file, $status = 200, $headers = array(), $public = true, $contentDisposition = null, $autoEtag = false, $autoLastModified = true) { @@ -54,13 +54,7 @@ public function __construct($file, $status = 200, $headers = array(), $public = } /** - * @param \SplFileInfo|string $file The file to stream - * @param integer $status The response status code - * @param array $headers An array of response headers - * @param boolean $public Files are public by default - * @param null|string $contentDisposition The type of Content-Disposition to set automatically with the filename - * @param boolean $autoEtag Whether the ETag header should be automatically set - * @param boolean $autoLastModified Whether the Last-Modified header should be automatically set + * {@inheritdoc} */ public static function create($file = null, $status = 200, $headers = array(), $public = true, $contentDisposition = null, $autoEtag = false, $autoLastModified = true) { @@ -70,10 +64,10 @@ public static function create($file = null, $status = 200, $headers = array(), $ /** * Sets the file to stream. * - * @param \SplFileInfo|string $file The file to stream - * @param string $contentDisposition - * @param Boolean $autoEtag - * @param Boolean $autoLastModified + * @param SplFileInfo|string $file The file to stream + * @param string $contentDisposition + * @param Boolean $autoEtag + * @param Boolean $autoLastModified * * @return BinaryFileResponse * @@ -183,7 +177,7 @@ public function prepare(Request $request) $path = $this->file->getRealPath(); if (strtolower($type) == 'x-accel-redirect') { // Do X-Accel-Mapping substitutions. - foreach (explode(',', $request->headers->get('X-Accel-Mapping', '')) as $mapping) { + foreach (explode(',', $request->headers->get('X-Accel-Mapping', '')) as $mapping) { $mapping = explode('=', $mapping, 2); if (2 == count($mapping)) { @@ -216,18 +210,14 @@ public function prepare(Request $request) $start = (int) $start; } - if ($start <= $end) { - if ($start < 0 || $end > $fileSize - 1) { - $this->setStatusCode(416); - } elseif ($start !== 0 || $end !== $fileSize - 1) { - $this->maxlen = $end < $fileSize ? $end - $start + 1 : -1; - $this->offset = $start; + $start = max($start, 0); + $end = min($end, $fileSize - 1); - $this->setStatusCode(206); - $this->headers->set('Content-Range', sprintf('bytes %s-%s/%s', $start, $end, $fileSize)); - $this->headers->set('Content-Length', $end - $start + 1); - } - } + $this->maxlen = $end < $fileSize ? $end - $start + 1 : -1; + $this->offset = $start; + + $this->setStatusCode(206); + $this->headers->set('Content-Range', sprintf('bytes %s-%s/%s', $start, $end, $fileSize)); } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/CHANGELOG.md b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/CHANGELOG.md index 061d47e7eec94c3a0707abec26328239e0aa4778..41e8eb2ec32a7b988861f3c91f6316ef1d972954 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/CHANGELOG.md +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/CHANGELOG.md @@ -1,13 +1,6 @@ CHANGELOG ========= -2.4.0 ------ - - * added RequestStack - * added Request::getEncodings() - * added accessors methods to session handlers - 2.3.0 ----- diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ExpressionRequestMatcher.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ExpressionRequestMatcher.php deleted file mode 100644 index e9c8441ce314b2f5a9eb88350b888fe83030636a..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ExpressionRequestMatcher.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\HttpFoundation; - -use Symfony\Component\ExpressionLanguage\ExpressionLanguage; - -/** - * ExpressionRequestMatcher uses an expression to match a Request. - * - * @author Fabien Potencier <fabien@symfony.com> - */ -class ExpressionRequestMatcher extends RequestMatcher -{ - private $language; - private $expression; - - public function setExpression(ExpressionLanguage $language, $expression) - { - $this->language = $language; - $this->expression = $expression; - } - - public function matches(Request $request) - { - if (!$this->language) { - throw new \LogicException('Unable to match the request as the expression language is not available.'); - } - - return $this->language->evaluate($this->expression, array( - 'request' => $request, - 'method' => $request->getMethod(), - 'path' => rawurldecode($request->getPathInfo()), - 'host' => $request->getHost(), - 'ip' => $request->getClientIp(), - 'attributes' => $request->attributes->all(), - )) && parent::matches($request); - } -} diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/File/File.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/File/File.php index 4fabfb910692ea5d81c916b79cdbf6740042c3a1..9002b510851a8883cc081cb23fc7f2271066120b 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/File/File.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/File/File.php @@ -137,7 +137,7 @@ protected function getTargetFile($directory, $name = null) throw new FileException(sprintf('Unable to write in the "%s" directory', $directory)); } - $target = rtrim($directory, '/\\').DIRECTORY_SEPARATOR.(null === $name ? $this->getBasename() : $this->getName($name)); + $target = $directory.DIRECTORY_SEPARATOR.(null === $name ? $this->getBasename() : $this->getName($name)); return new File($target, false); } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/File/UploadedFile.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/File/UploadedFile.php index 16c4cdb65eda94e9bb2010a8138229b56e22a063..1f23c35c6b8b45c3662aeab0526363cb9a325637 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/File/UploadedFile.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/File/UploadedFile.php @@ -252,7 +252,7 @@ public function move($directory, $name = null) return $target; } - throw new FileException($this->getErrorMessage()); + throw new FileException($this->getErrorMessage($this->getError())); } /** @@ -262,37 +262,30 @@ public function move($directory, $name = null) */ public static function getMaxFilesize() { - $iniMax = strtolower(ini_get('upload_max_filesize')); + $max = strtolower(ini_get('upload_max_filesize')); - if ('' === $iniMax) { + if ('' === $max) { return PHP_INT_MAX; } - $max = ltrim($iniMax, '+'); - if (0 === strpos($max, '0x')) { - $max = intval($max, 16); - } elseif (0 === strpos($max, '0')) { - $max = intval($max, 8); - } else { - $max = intval($max); - } + if (preg_match('#^\+?(0x?)?(.*?)([kmg]?)$#', $max, $match)) { + $shifts = array('' => 0, 'k' => 10, 'm' => 20, 'g' => 30); + $bases = array('' => 10, '0' => 8, '0x' => 16); - switch (substr($iniMax, -1)) { - case 't': $max *= 1024; - case 'g': $max *= 1024; - case 'm': $max *= 1024; - case 'k': $max *= 1024; + return intval($match[2], $bases[$match[1]]) << $shifts[$match[3]]; } - return $max; + return 0; } /** * Returns an informative upload error message. * + * @param int $code The error code returned by an upload attempt + * * @return string The error message regarding the specified error code */ - public function getErrorMessage() + private function getErrorMessage($errorCode) { static $errors = array( UPLOAD_ERR_INI_SIZE => 'The file "%s" exceeds your upload_max_filesize ini directive (limit is %d kb).', @@ -301,13 +294,12 @@ public function getErrorMessage() UPLOAD_ERR_NO_FILE => 'No file was uploaded.', UPLOAD_ERR_CANT_WRITE => 'The file "%s" could not be written on disk.', UPLOAD_ERR_NO_TMP_DIR => 'File could not be uploaded: missing temporary directory.', - UPLOAD_ERR_EXTENSION => 'File upload was stopped by a PHP extension.', + UPLOAD_ERR_EXTENSION => 'File upload was stopped by a php extension.', ); - $errorCode = $this->error; $maxFilesize = $errorCode === UPLOAD_ERR_INI_SIZE ? self::getMaxFilesize() / 1024 : 0; $message = isset($errors[$errorCode]) ? $errors[$errorCode] : 'The file "%s" was not uploaded due to an unknown error.'; - return sprintf($message, $this->getClientOriginalName(), $maxFilesize); + return sprintf($message, $this->getClientOriginalName(), $maxFilesize); } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/HeaderBag.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/HeaderBag.php index 2b9ef0e443e151ac4db6930bd8887d9fa90b48a6..b579eb991a146cdb2883dd355ff5b3999781fa5a 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/HeaderBag.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/HeaderBag.php @@ -20,8 +20,8 @@ */ class HeaderBag implements \IteratorAggregate, \Countable { - protected $headers = array(); - protected $cacheControl = array(); + protected $headers; + protected $cacheControl; /** * Constructor. @@ -32,6 +32,8 @@ class HeaderBag implements \IteratorAggregate, \Countable */ public function __construct(array $headers = array()) { + $this->cacheControl = array(); + $this->headers = array(); foreach ($headers as $key => $values) { $this->set($key, $values); } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/IpUtils.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/IpUtils.php index 98b848108cb5d58b13520f53e61aa4234057fea3..7c3742e768f91c405d73513f44602bc7b5ab4873 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/IpUtils.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/IpUtils.php @@ -24,10 +24,10 @@ class IpUtils private function __construct() {} /** - * Checks if an IPv4 or IPv6 address is contained in the list of given IPs or subnets + * Validates an IPv4 or IPv6 address. * - * @param string $requestIp IP to check - * @param string|array $ips List of IPs or subnets (can be a string if only a single one) + * @param string $requestIp + * @param string|array $ips * * @return boolean Whether the IP is valid */ @@ -49,11 +49,10 @@ public static function checkIp($requestIp, $ips) } /** - * Compares two IPv4 addresses. - * In case a subnet is given, it checks if it contains the request IP. + * Validates an IPv4 address. * - * @param string $requestIp IPv4 address to check - * @param string $ip IPv4 address or subnet in CIDR notation + * @param string $requestIp + * @param string $ip * * @return boolean Whether the IP is valid */ @@ -74,14 +73,13 @@ public static function checkIp4($requestIp, $ip) } /** - * Compares two IPv6 addresses. - * In case a subnet is given, it checks if it contains the request IP. + * Validates an IPv6 address. * * @author David Soria Parra <dsp at php dot net> * @see https://github.com/dsp/v6tools * - * @param string $requestIp IPv6 address to check - * @param string $ip IPv6 address or subnet in CIDR notation + * @param string $requestIp + * @param string $ip * * @return boolean Whether the IP is valid * diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/JsonResponse.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/JsonResponse.php index 6dfa75cd2ddc4a25431608810caeed58cd413918..eafccaa844dc05ec163095407d324049137fa6c8 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/JsonResponse.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/JsonResponse.php @@ -55,11 +55,11 @@ public static function create($data = null, $status = 200, $headers = array()) /** * Sets the JSONP callback. * - * @param string|null $callback The JSONP callback or null to use none + * @param string $callback * * @return JsonResponse * - * @throws \InvalidArgumentException When the callback name is not valid + * @throws \InvalidArgumentException */ public function setCallback($callback = null) { @@ -85,18 +85,12 @@ public function setCallback($callback = null) * @param mixed $data * * @return JsonResponse - * - * @throws \InvalidArgumentException */ public function setData($data = array()) { // Encode <, >, ', &, and " for RFC4627-compliant JSON, which may also be embedded into HTML. $this->data = json_encode($data, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_AMP | JSON_HEX_QUOT); - if (JSON_ERROR_NONE !== json_last_error()) { - throw new \InvalidArgumentException($this->transformJsonError()); - } - return $this->update(); } @@ -122,31 +116,4 @@ protected function update() return $this->setContent($this->data); } - - private function transformJsonError() - { - if (function_exists('json_last_error_msg')) { - return json_last_error_msg(); - } - - switch (json_last_error()) { - case JSON_ERROR_DEPTH: - return 'Maximum stack depth exceeded.'; - - case JSON_ERROR_STATE_MISMATCH: - return 'Underflow or the modes mismatch.'; - - case JSON_ERROR_CTRL_CHAR: - return 'Unexpected control character found.'; - - case JSON_ERROR_SYNTAX: - return 'Syntax error, malformed JSON.'; - - case JSON_ERROR_UTF8: - return 'Malformed UTF-8 characters, possibly incorrectly encoded.'; - - default: - return 'Unknown error.'; - } - } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ParameterBag.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ParameterBag.php index a4ac98cffebf92d963596dbcc47d5fdc81b4f335..c8720cdc12e2b3c9e79da36f3db907dfaaf03007 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ParameterBag.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ParameterBag.php @@ -266,7 +266,7 @@ public function getInt($key, $default = 0, $deep = false) * * @return mixed */ - public function filter($key, $default = null, $deep = false, $filter = FILTER_DEFAULT, $options = array()) + public function filter($key, $default = null, $deep = false, $filter=FILTER_DEFAULT, $options=array()) { $value = $this->get($key, $default, $deep); diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/README.md b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/README.md index ea6a790a641a3095f36e243600e3061c770fbe47..ed49b4e15e41956b3369db867a91e8b517da16b0 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/README.md +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/README.md @@ -44,5 +44,5 @@ Resources You can run the unit tests with the following command: $ cd path/to/Symfony/Component/HttpFoundation/ - $ composer.phar install + $ composer.phar install --dev $ phpunit diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RedirectResponse.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RedirectResponse.php index fbf377bae02b68009f0323e89f666f1eb8db5dfc..54f57216b03a41f4120f913902fa0c044d4ccd18 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RedirectResponse.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RedirectResponse.php @@ -27,7 +27,7 @@ class RedirectResponse extends Response * * @param string $url The URL to redirect to * @param integer $status The status code (302 by default) - * @param array $headers The headers (Location is always set to the given URL) + * @param array $headers The headers (Location is always set to the given url) * * @throws \InvalidArgumentException * diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Request.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Request.php index 88a61b642dd88fe038f312bf76e8af9fb7096c56..4641eadab132fb285603229a4058075ce210519a 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Request.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Request.php @@ -64,8 +64,6 @@ class Request protected static $httpMethodParameterOverride = false; /** - * Custom parameters - * * @var \Symfony\Component\HttpFoundation\ParameterBag * * @api @@ -73,8 +71,6 @@ class Request public $attributes; /** - * Request body parameters ($_POST) - * * @var \Symfony\Component\HttpFoundation\ParameterBag * * @api @@ -82,8 +78,6 @@ class Request public $request; /** - * Query string parameters ($_GET) - * * @var \Symfony\Component\HttpFoundation\ParameterBag * * @api @@ -91,8 +85,6 @@ class Request public $query; /** - * Server and execution environment parameters ($_SERVER) - * * @var \Symfony\Component\HttpFoundation\ServerBag * * @api @@ -100,8 +92,6 @@ class Request public $server; /** - * Uploaded files ($_FILES) - * * @var \Symfony\Component\HttpFoundation\FileBag * * @api @@ -109,8 +99,6 @@ class Request public $files; /** - * Cookies ($_COOKIE) - * * @var \Symfony\Component\HttpFoundation\ParameterBag * * @api @@ -118,8 +106,6 @@ class Request public $cookies; /** - * Headers (taken from the $_SERVER) - * * @var \Symfony\Component\HttpFoundation\HeaderBag * * @api @@ -141,11 +127,6 @@ class Request */ protected $charsets; - /** - * @var array - */ - protected $encodings; - /** * @var array */ @@ -201,8 +182,6 @@ class Request */ protected static $formats; - protected static $requestFactory; - /** * Constructor. * @@ -249,7 +228,6 @@ public function initialize(array $query = array(), array $request = array(), arr $this->content = $content; $this->languages = null; $this->charsets = null; - $this->encodings = null; $this->acceptableContentTypes = null; $this->pathInfo = null; $this->requestUri = null; @@ -268,7 +246,7 @@ public function initialize(array $query = array(), array $request = array(), arr */ public static function createFromGlobals() { - $request = self::createRequestFromFactory($_GET, $_POST, array(), $_COOKIE, $_FILES, $_SERVER); + $request = new static($_GET, $_POST, array(), $_COOKIE, $_FILES, $_SERVER); if (0 === strpos($request->headers->get('CONTENT_TYPE'), 'application/x-www-form-urlencoded') && in_array(strtoupper($request->server->get('REQUEST_METHOD', 'GET')), array('PUT', 'DELETE', 'PATCH')) @@ -368,39 +346,16 @@ public static function create($uri, $method = 'GET', $parameters = array(), $coo break; } - $queryString = ''; if (isset($components['query'])) { parse_str(html_entity_decode($components['query']), $qs); - - if ($query) { - $query = array_replace($qs, $query); - $queryString = http_build_query($query, '', '&'); - } else { - $query = $qs; - $queryString = $components['query']; - } - } elseif ($query) { - $queryString = http_build_query($query, '', '&'); + $query = array_replace($qs, $query); } + $queryString = http_build_query($query, '', '&'); $server['REQUEST_URI'] = $components['path'].('' !== $queryString ? '?'.$queryString : ''); $server['QUERY_STRING'] = $queryString; - return self::createRequestFromFactory($query, $request, array(), $cookies, $files, $server, $content); - } - - /** - * Sets a callable able to create a Request instance. - * - * This is mainly useful when you need to override the Request class - * to keep BC with an existing system. It should not be used for any - * other purpose. - * - * @param callable|null $callable A PHP callable - */ - public static function setFactory($callable) - { - self::$requestFactory = $callable; + return new static($query, $request, array(), $cookies, $files, $server, $content); } /** @@ -441,7 +396,6 @@ public function duplicate(array $query = null, array $request = null, array $att } $dup->languages = null; $dup->charsets = null; - $dup->encodings = null; $dup->acceptableContentTypes = null; $dup->pathInfo = null; $dup->requestUri = null; @@ -450,12 +404,8 @@ public function duplicate(array $query = null, array $request = null, array $att $dup->method = null; $dup->format = null; - if (!$dup->get('_format') && $this->get('_format')) { - $dup->attributes->set('_format', $this->get('_format')); - } - - if (!$dup->getRequestFormat(null)) { - $dup->setRequestFormat($format = $this->getRequestFormat(null)); + if (!$dup->get('_format')) { + $dup->setRequestFormat($this->getRequestFormat()); } return $dup; @@ -517,7 +467,7 @@ public function overrideGlobals() $request = array('g' => $_GET, 'p' => $_POST, 'c' => $_COOKIE); - $requestOrder = ini_get('request_order') ?: ini_get('variables_order'); + $requestOrder = ini_get('request_order') ?: ini_get('variable_order'); $requestOrder = preg_replace('#[^cgp]#', '', strtolower($requestOrder)) ?: 'gp'; $_REQUEST = array(); @@ -769,9 +719,9 @@ public function setSession(SessionInterface $session) /** * Returns the client IP addresses. * - * In the returned array the most trusted IP address is first, and the - * least trusted one last. The "real" client IP address is the last one, - * but this is also the least trusted one. Trusted proxies are stripped. + * The most trusted IP address is first, and the less trusted one last. + * The "real" client IP address is the last one, but this is also the + * less trusted one. * * Use this method carefully; you should use getClientIp() instead. * @@ -792,18 +742,19 @@ public function getClientIps() } $clientIps = array_map('trim', explode(',', $this->headers->get(self::$trustedHeaders[self::HEADER_CLIENT_IP]))); - $clientIps[] = $ip; // Complete the IP chain with the IP the request actually came from + $clientIps[] = $ip; - $ip = $clientIps[0]; // Fallback to this when the client IP falls into the range of trusted proxies + $trustedProxies = !self::$trustedProxies ? array($ip) : self::$trustedProxies; + $ip = $clientIps[0]; - // Eliminate all IPs from the forwarded IP chain which are trusted proxies foreach ($clientIps as $key => $clientIp) { - if (IpUtils::checkIp($clientIp, self::$trustedProxies)) { + if (IpUtils::checkIp($clientIp, $trustedProxies)) { unset($clientIps[$key]); + + continue; } } - // Now the IP chain contains only untrusted proxies and the client IP return $clientIps ? array_reverse($clientIps) : array($ip); } @@ -895,14 +846,14 @@ public function getBasePath() } /** - * Returns the root URL from which this request is executed. + * Returns the root url from which this request is executed. * * The base URL never ends with a /. * * This is similar to getBasePath(), except that it also includes the * script filename (e.g. index.php) if one exists. * - * @return string The raw URL (i.e. not urldecoded) + * @return string The raw url (i.e. not urldecoded) * * @api */ @@ -954,14 +905,6 @@ public function getPort() } } - if ($host = $this->headers->get('HOST')) { - if (false !== $pos = strrpos($host, ':')) { - return intval(substr($host, $pos + 1)); - } - - return 'https' === $this->getScheme() ? 443 : 80; - } - return $this->server->get('SERVER_PORT'); } @@ -996,7 +939,7 @@ public function getUserInfo() $pass = $this->getPassword(); if ('' != $pass) { - $userinfo .= ":$pass"; + $userinfo .= ":$pass"; } return $userinfo; @@ -1120,7 +1063,7 @@ public function getQueryString() public function isSecure() { if (self::$trustedProxies && self::$trustedHeaders[self::HEADER_CLIENT_PROTO] && $proto = $this->headers->get(self::$trustedHeaders[self::HEADER_CLIENT_PROTO])) { - return in_array(strtolower(current(explode(',', $proto))), array('https', 'on', 'ssl', '1')); + return in_array(strtolower($proto), array('https', 'on', '1')); } return 'on' == strtolower($this->server->get('HTTPS')) || 1 == $this->server->get('HTTPS'); @@ -1162,7 +1105,7 @@ public function getHost() // as the host can come from the user (HTTP_HOST and depending on the configuration, SERVER_NAME too can come from the user) // check that it does not contain forbidden characters (see RFC 952 and RFC 2181) if ($host && !preg_match('/^\[?(?:[a-zA-Z0-9-:\]_]+\.?)+$/', $host)) { - throw new \UnexpectedValueException(sprintf('Invalid Host "%s"', $host)); + throw new \UnexpectedValueException('Invalid Host "'.$host.'"'); } if (count(self::$trustedHostPatterns) > 0) { @@ -1180,7 +1123,7 @@ public function getHost() } } - throw new \UnexpectedValueException(sprintf('Untrusted Host "%s"', $host)); + throw new \UnexpectedValueException('Untrusted Host "'.$host.'"'); } return $host; @@ -1559,20 +1502,6 @@ public function getCharsets() return $this->charsets = array_keys(AcceptHeader::fromString($this->headers->get('Accept-Charset'))->all()); } - /** - * Gets a list of encodings acceptable by the client browser. - * - * @return array List of encodings in preferable order - */ - public function getEncodings() - { - if (null !== $this->encodings) { - return $this->encodings; - } - - return $this->encodings = array_keys(AcceptHeader::fromString($this->headers->get('Accept-Encoding'))->all()); - } - /** * Gets a list of content types acceptable by the client browser * @@ -1629,13 +1558,13 @@ protected function prepareRequestUri() $requestUri = $this->headers->get('X_REWRITE_URL'); $this->headers->remove('X_REWRITE_URL'); } elseif ($this->server->get('IIS_WasUrlRewritten') == '1' && $this->server->get('UNENCODED_URL') != '') { - // IIS7 with URL Rewrite: make sure we get the unencoded URL (double slash problem) + // IIS7 with URL Rewrite: make sure we get the unencoded url (double slash problem) $requestUri = $this->server->get('UNENCODED_URL'); $this->server->remove('UNENCODED_URL'); $this->server->remove('IIS_WasUrlRewritten'); } elseif ($this->server->has('REQUEST_URI')) { $requestUri = $this->server->get('REQUEST_URI'); - // HTTP proxy reqs setup request URI with scheme and host [and port] + the URL path, only use URL path + // HTTP proxy reqs setup request uri with scheme and host [and port] + the url path, only use url path $schemeAndHttpHost = $this->getSchemeAndHttpHost(); if (strpos($requestUri, $schemeAndHttpHost) === 0) { $requestUri = substr($requestUri, strlen($schemeAndHttpHost)); @@ -1684,7 +1613,7 @@ protected function prepareBaseUrl() $seg = $segs[$index]; $baseUrl = '/'.$seg.$baseUrl; ++$index; - } while ($last > $index && (false !== $pos = strpos($path, $baseUrl)) && 0 != $pos); + } while (($last > $index) && (false !== ($pos = strpos($path, $baseUrl))) && (0 != $pos)); } // Does the baseUrl have anything in common with the request_uri? @@ -1701,7 +1630,7 @@ protected function prepareBaseUrl() } $truncatedRequestUri = $requestUri; - if (false !== $pos = strpos($requestUri, '?')) { + if (($pos = strpos($requestUri, '?')) !== false) { $truncatedRequestUri = substr($requestUri, 0, $pos); } @@ -1714,7 +1643,7 @@ protected function prepareBaseUrl() // If using mod_rewrite or ISAPI_Rewrite strip the script filename // out of baseUrl. $pos !== 0 makes sure it is not matching a value // from PATH_INFO or QUERY_STRING - if (strlen($requestUri) >= strlen($baseUrl) && (false !== $pos = strpos($requestUri, $baseUrl)) && $pos !== 0) { + if ((strlen($requestUri) >= strlen($baseUrl)) && ((false !== ($pos = strpos($requestUri, $baseUrl))) && ($pos !== 0))) { $baseUrl = substr($requestUri, 0, $pos + strlen($baseUrl)); } @@ -1767,7 +1696,7 @@ protected function preparePathInfo() $requestUri = substr($requestUri, 0, $pos); } - if (null !== $baseUrl && false === $pathInfo = substr($requestUri, strlen($baseUrl))) { + if ((null !== $baseUrl) && (false === ($pathInfo = substr($requestUri, strlen($baseUrl))))) { // If substr() returns false then PATH_INFO is set to an empty string return '/'; } elseif (null === $baseUrl) { @@ -1836,19 +1765,4 @@ private function getUrlencodedPrefix($string, $prefix) return false; } - - private static function createRequestFromFactory(array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), $content = null) - { - if (self::$requestFactory) { - $request = call_user_func(self::$requestFactory, $query, $request, $attributes, $cookies, $files, $server, $content); - - if (!$request instanceof Request) { - throw new \LogicException('The Request factory must return an instance of Symfony\Component\HttpFoundation\Request.'); - } - - return $request; - } - - return new static($query, $request, $attributes, $cookies, $files, $server, $content); - } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RequestStack.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RequestStack.php deleted file mode 100644 index 4b0ef28deefd347644dd5e623ce85376b8f17eb9..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/RequestStack.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\HttpFoundation; - -/** - * Request stack that controls the lifecycle of requests. - * - * @author Benjamin Eberlei <kontakt@beberlei.de> - */ -class RequestStack -{ - /** - * @var Request[] - */ - private $requests = array(); - - /** - * Pushes a Request on the stack. - * - * This method should generally not be called directly as the stack - * management should be taken care of by the application itself. - */ - public function push(Request $request) - { - $this->requests[] = $request; - } - - /** - * Pops the current request from the stack. - * - * This operation lets the current request go out of scope. - * - * This method should generally not be called directly as the stack - * management should be taken care of by the application itself. - * - * @return Request|null - */ - public function pop() - { - if (!$this->requests) { - return null; - } - - return array_pop($this->requests); - } - - /** - * @return Request|null - */ - public function getCurrentRequest() - { - return end($this->requests) ?: null; - } - - /** - * Gets the master Request. - * - * Be warned that making your code aware of the master request - * might make it un-compatible with other features of your framework - * like ESI support. - * - * @return Request|null - */ - public function getMasterRequest() - { - if (!$this->requests) { - return null; - } - - return $this->requests[0]; - } - - /** - * Returns the parent request of the current. - * - * Be warned that making your code aware of the parent request - * might make it un-compatible with other features of your framework - * like ESI support. - * - * If current Request is the master request, it returns null. - * - * @return Request|null - */ - public function getParentRequest() - { - $pos = count($this->requests) - 2; - - if (!isset($this->requests[$pos])) { - return null; - } - - return $this->requests[$pos]; - } -} diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Response.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Response.php index bc9a193c7dc2c298501a8eac8b85a7a919e83ad2..25c49c9419d84ec9229482fa77a5054a9c699c90 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Response.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Response.php @@ -20,67 +20,6 @@ */ class Response { - const HTTP_CONTINUE = 100; - const HTTP_SWITCHING_PROTOCOLS = 101; - const HTTP_PROCESSING = 102; // RFC2518 - const HTTP_OK = 200; - const HTTP_CREATED = 201; - const HTTP_ACCEPTED = 202; - const HTTP_NON_AUTHORITATIVE_INFORMATION = 203; - const HTTP_NO_CONTENT = 204; - const HTTP_RESET_CONTENT = 205; - const HTTP_PARTIAL_CONTENT = 206; - const HTTP_MULTI_STATUS = 207; // RFC4918 - const HTTP_ALREADY_REPORTED = 208; // RFC5842 - const HTTP_IM_USED = 226; // RFC3229 - const HTTP_MULTIPLE_CHOICES = 300; - const HTTP_MOVED_PERMANENTLY = 301; - const HTTP_FOUND = 302; - const HTTP_SEE_OTHER = 303; - const HTTP_NOT_MODIFIED = 304; - const HTTP_USE_PROXY = 305; - const HTTP_RESERVED = 306; - const HTTP_TEMPORARY_REDIRECT = 307; - const HTTP_PERMANENTLY_REDIRECT = 308; // RFC-reschke-http-status-308-07 - const HTTP_BAD_REQUEST = 400; - const HTTP_UNAUTHORIZED = 401; - const HTTP_PAYMENT_REQUIRED = 402; - const HTTP_FORBIDDEN = 403; - const HTTP_NOT_FOUND = 404; - const HTTP_METHOD_NOT_ALLOWED = 405; - const HTTP_NOT_ACCEPTABLE = 406; - const HTTP_PROXY_AUTHENTICATION_REQUIRED = 407; - const HTTP_REQUEST_TIMEOUT = 408; - const HTTP_CONFLICT = 409; - const HTTP_GONE = 410; - const HTTP_LENGTH_REQUIRED = 411; - const HTTP_PRECONDITION_FAILED = 412; - const HTTP_REQUEST_ENTITY_TOO_LARGE = 413; - const HTTP_REQUEST_URI_TOO_LONG = 414; - const HTTP_UNSUPPORTED_MEDIA_TYPE = 415; - const HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416; - const HTTP_EXPECTATION_FAILED = 417; - const HTTP_I_AM_A_TEAPOT = 418; // RFC2324 - const HTTP_UNPROCESSABLE_ENTITY = 422; // RFC4918 - const HTTP_LOCKED = 423; // RFC4918 - const HTTP_FAILED_DEPENDENCY = 424; // RFC4918 - const HTTP_RESERVED_FOR_WEBDAV_ADVANCED_COLLECTIONS_EXPIRED_PROPOSAL = 425; // RFC2817 - const HTTP_UPGRADE_REQUIRED = 426; // RFC2817 - const HTTP_PRECONDITION_REQUIRED = 428; // RFC6585 - const HTTP_TOO_MANY_REQUESTS = 429; // RFC6585 - const HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE = 431; // RFC6585 - const HTTP_INTERNAL_SERVER_ERROR = 500; - const HTTP_NOT_IMPLEMENTED = 501; - const HTTP_BAD_GATEWAY = 502; - const HTTP_SERVICE_UNAVAILABLE = 503; - const HTTP_GATEWAY_TIMEOUT = 504; - const HTTP_VERSION_NOT_SUPPORTED = 505; - const HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL = 506; // RFC2295 - const HTTP_INSUFFICIENT_STORAGE = 507; // RFC4918 - const HTTP_LOOP_DETECTED = 508; // RFC5842 - const HTTP_NOT_EXTENDED = 510; // RFC2774 - const HTTP_NETWORK_AUTHENTICATION_REQUIRED = 511; // RFC6585 - /** * @var \Symfony\Component\HttpFoundation\ResponseHeaderBag */ @@ -188,7 +127,7 @@ class Response /** * Constructor. * - * @param mixed $content The response content, see setContent() + * @param string $content The response content * @param integer $status The response status code * @param array $headers An array of response headers * @@ -215,7 +154,7 @@ public function __construct($content = '', $status = 200, $headers = array()) * return Response::create($body, 200) * ->setSharedMaxAge(300); * - * @param mixed $content The response content, see setContent() + * @param string $content The response content * @param integer $status The response status code * @param array $headers An array of response headers * @@ -284,7 +223,7 @@ public function prepare(Request $request) $charset = $this->charset ?: 'UTF-8'; if (!$headers->has('Content-Type')) { $headers->set('Content-Type', 'text/html; charset='.$charset); - } elseif (0 === stripos($headers->get('Content-Type'), 'text/') && false === stripos($headers->get('Content-Type'), 'charset')) { + } elseif (0 === strpos($headers->get('Content-Type'), 'text/') && false === strpos($headers->get('Content-Type'), 'charset')) { // add the charset $headers->set('Content-Type', $headers->get('Content-Type').'; charset='.$charset); } @@ -332,12 +271,12 @@ public function sendHeaders() } // status - header(sprintf('HTTP/%s %s %s', $this->version, $this->statusCode, $this->statusText), true, $this->statusCode); + header(sprintf('HTTP/%s %s %s', $this->version, $this->statusCode, $this->statusText)); // headers foreach ($this->headers->allPreserveCase() as $name => $values) { foreach ($values as $value) { - header($name.': '.$value, false, $this->statusCode); + header($name.': '.$value, false); } } @@ -403,9 +342,9 @@ public function send() /** * Sets the response content. * - * Valid types are strings, numbers, null, and objects that implement a __toString() method. + * Valid types are strings, numbers, and objects that implement a __toString() method. * - * @param mixed $content Content that can be cast to string + * @param mixed $content * * @return Response * @@ -1242,7 +1181,7 @@ public function isEmpty() } /** - * Check if we need to remove Cache-Control for SSL encrypted downloads when using IE < 9 + * Check if we need to remove Cache-Control for ssl encrypted downloads when using IE < 9 * * @link http://support.microsoft.com/kb/323308 */ diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ServerBag.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ServerBag.php index de6dbc9fb533bfd73e78ae15ce3b1399ac398653..d7aadc6bb65f45c538d8cdea71f0634a0a718c41 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ServerBag.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ServerBag.php @@ -64,17 +64,11 @@ public function getHeaders() $authorizationHeader = $this->parameters['REDIRECT_HTTP_AUTHORIZATION']; } - if (null !== $authorizationHeader) { - if (0 === stripos($authorizationHeader, 'basic')) { - // Decode AUTHORIZATION header into PHP_AUTH_USER and PHP_AUTH_PW when authorization header is basic - $exploded = explode(':', base64_decode(substr($authorizationHeader, 6))); - if (count($exploded) == 2) { - list($headers['PHP_AUTH_USER'], $headers['PHP_AUTH_PW']) = $exploded; - } - } elseif (empty($this->parameters['PHP_AUTH_DIGEST']) && (0 === stripos($authorizationHeader, 'digest'))) { - // In some circumstances PHP_AUTH_DIGEST needs to be set - $headers['PHP_AUTH_DIGEST'] = $authorizationHeader; - $this->parameters['PHP_AUTH_DIGEST'] = $authorizationHeader; + // Decode AUTHORIZATION header into PHP_AUTH_USER and PHP_AUTH_PW when authorization header is basic + if ((null !== $authorizationHeader) && (0 === stripos($authorizationHeader, 'basic'))) { + $exploded = explode(':', base64_decode(substr($authorizationHeader, 6))); + if (count($exploded) == 2) { + list($headers['PHP_AUTH_USER'], $headers['PHP_AUTH_PW']) = $exploded; } } } @@ -82,8 +76,6 @@ public function getHeaders() // PHP_AUTH_USER/PHP_AUTH_PW if (isset($headers['PHP_AUTH_USER'])) { $headers['AUTHORIZATION'] = 'Basic '.base64_encode($headers['PHP_AUTH_USER'].':'.$headers['PHP_AUTH_PW']); - } elseif (isset($headers['PHP_AUTH_DIGEST'])) { - $headers['AUTHORIZATION'] = $headers['PHP_AUTH_DIGEST']; } return $headers; diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/AttributeBag.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/AttributeBag.php index af416d6d3a4c444443cf3f44e7bd1a6f6d02329c..e9d0257152ec99ab4fbbc2bb5885e5018013b691 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/AttributeBag.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/AttributeBag.php @@ -31,7 +31,7 @@ class AttributeBag implements AttributeBagInterface, \IteratorAggregate, \Counta /** * Constructor. * - * @param string $storageKey The key used to store attributes in the session + * @param string $storageKey The key used to store attributes in the session. */ public function __construct($storageKey = '_sf2_attributes') { @@ -148,7 +148,7 @@ public function getIterator() /** * Returns the number of attributes. * - * @return integer The number of attributes + * @return int The number of attributes */ public function count() { diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/AttributeBagInterface.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/AttributeBagInterface.php index 6356056edddeea07349aa3f8069d5b1b54f0d42b..5f1f37be25c31410ce47f68fabcd6d208eb34f24 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/AttributeBagInterface.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/AttributeBagInterface.php @@ -33,7 +33,7 @@ public function has($name); * Returns an attribute. * * @param string $name The attribute name - * @param mixed $default The default value if not found + * @param mixed $default The default value if not found. * * @return mixed */ @@ -66,7 +66,7 @@ public function replace(array $attributes); * * @param string $name * - * @return mixed The removed value or null when it does not exist + * @return mixed The removed value */ public function remove($name); } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/NamespacedAttributeBag.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/NamespacedAttributeBag.php index 7cafb2241c838027147c90a9ca487c80c19651ff..c0dd358e85117884be151fedcf1810fc58eb9909 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/NamespacedAttributeBag.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Attribute/NamespacedAttributeBag.php @@ -149,8 +149,8 @@ protected function &resolveAttributePath($name, $writeContext = false) */ protected function resolveKey($name) { - if (false !== $pos = strrpos($name, $this->namespaceCharacter)) { - $name = substr($name, $pos+1); + if (strpos($name, $this->namespaceCharacter) !== false) { + $name = substr($name, strrpos($name, $this->namespaceCharacter)+1, strlen($name)); } return $name; diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Flash/AutoExpireFlashBag.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Flash/AutoExpireFlashBag.php index 25a62604d2607819b9803ceef2bd1df429644eb4..c6e41de62e287141550a92f8f31e9510b8461095 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Flash/AutoExpireFlashBag.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Flash/AutoExpireFlashBag.php @@ -25,7 +25,7 @@ class AutoExpireFlashBag implements FlashBagInterface * * @var array */ - private $flashes = array('display' => array(), 'new' => array()); + private $flashes = array(); /** * The storage key for flashes in the session @@ -42,6 +42,7 @@ class AutoExpireFlashBag implements FlashBagInterface public function __construct($storageKey = '_sf2_flashes') { $this->storageKey = $storageKey; + $this->flashes = array('display' => array(), 'new' => array()); } /** diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Flash/FlashBag.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Flash/FlashBag.php index 2bd7786d7a918a9d3fefe519438c75d80c423946..d62e3835abe08af1ebea6de0cd25126111768d1d 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Flash/FlashBag.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Flash/FlashBag.php @@ -14,8 +14,6 @@ /** * FlashBag flash message container. * - * \IteratorAggregate implementation is deprecated and will be removed in 3.0. - * * @author Drak <drak@zikula.org> */ class FlashBag implements FlashBagInterface, \IteratorAggregate @@ -78,7 +76,7 @@ public function add($type, $message) /** * {@inheritdoc} */ - public function peek($type, array $default = array()) + public function peek($type, array $default =array()) { return $this->has($type) ? $this->flashes[$type] : $default; } @@ -169,8 +167,6 @@ public function clear() /** * Returns an iterator for flashes. * - * @deprecated Will be removed in 3.0. - * * @return \ArrayIterator An \ArrayIterator instance */ public function getIterator() diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Session.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Session.php index ac626fd58998db6d67c02771b013c62dfb8a5b80..15df09770994ecac6f8a678f908caed62e16ae0d 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Session.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Session.php @@ -16,6 +16,7 @@ use Symfony\Component\HttpFoundation\Session\Attribute\AttributeBagInterface; use Symfony\Component\HttpFoundation\Session\Flash\FlashBag; use Symfony\Component\HttpFoundation\Session\Flash\FlashBagInterface; +use Symfony\Component\HttpFoundation\Session\SessionBagInterface; use Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage; /** diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/SessionInterface.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/SessionInterface.php index dc2f7bc4f339c4ce6d99489141d90d89c36f7a89..a94fad00d6f0facc1ab260ff830aca7ceb2f94d6 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/SessionInterface.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/SessionInterface.php @@ -163,7 +163,7 @@ public function replace(array $attributes); * * @param string $name * - * @return mixed The removed value or null when it does not exist + * @return mixed The removed value * * @api */ diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MemcacheSessionHandler.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MemcacheSessionHandler.php index b2384505ae60db91f0c8f40cb13ac40d7f4bcf3f..4a5e63989a4638ca72747ba1b0c1386c23bf4a72 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MemcacheSessionHandler.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MemcacheSessionHandler.php @@ -106,14 +106,4 @@ public function gc($lifetime) // not required here because memcache will auto expire the records anyhow. return true; } - - /** - * Return a Memcache instance - * - * @return \Memcache - */ - protected function getMemcache() - { - return $this->memcache; - } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MemcachedSessionHandler.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MemcachedSessionHandler.php index ed7d6edf4b824a1ddb287d4bf93efca14ee2758e..b3ca0bd3cdcf9e9315c1827c5165f7d308328bc4 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MemcachedSessionHandler.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MemcachedSessionHandler.php @@ -112,14 +112,4 @@ public function gc($lifetime) // not required here because memcached will auto expire the records anyhow. return true; } - - /** - * Return a Memcached instance - * - * @return \Memcached - */ - protected function getMemcached() - { - return $this->memcached; - } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MongoDbSessionHandler.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MongoDbSessionHandler.php index 4d819fe3f8cc962d23a8c7a87f2d6699d4cda990..69ebae9542cc32233f291a76fdeb1093cd384fe0 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MongoDbSessionHandler.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/MongoDbSessionHandler.php @@ -160,14 +160,4 @@ private function getCollection() return $this->collection; } - - /** - * Return a Mongo instance - * - * @return \Mongo - */ - protected function getMongo() - { - return $this->mongo; - } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/PdoSessionHandler.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/PdoSessionHandler.php index baf8eea8f610edfac96affa016f34c1f47883aa3..347cbee706a08660839d71dc5496790d226ca771 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/PdoSessionHandler.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/PdoSessionHandler.php @@ -240,14 +240,4 @@ private function createNewSession($id, $data = '') return true; } - - /** - * Return a PDO instance - * - * @return \PDO - */ - protected function getConnection() - { - return $this->pdo; - } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/WriteCheckSessionHandler.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/WriteCheckSessionHandler.php deleted file mode 100644 index c43c9d05feb0be478ac5dc6cca7f898e5f3d7ac0..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/Handler/WriteCheckSessionHandler.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\HttpFoundation\Session\Storage\Handler; - -/** - * Wraps another SessionHandlerInterface to only write the session when it has been modified. - * - * @author Adrien Brault <adrien.brault@gmail.com> - */ -class WriteCheckSessionHandler implements \SessionHandlerInterface -{ - /** - * @var \SessionHandlerInterface - */ - private $wrappedSessionHandler; - - /** - * @var array sessionId => session - */ - private $readSessions; - - public function __construct(\SessionHandlerInterface $wrappedSessionHandler) - { - $this->wrappedSessionHandler = $wrappedSessionHandler; - } - - /** - * {@inheritdoc} - */ - public function close() - { - return $this->wrappedSessionHandler->close(); - } - - /** - * {@inheritdoc} - */ - public function destroy($sessionId) - { - return $this->wrappedSessionHandler->destroy($sessionId); - } - - /** - * {@inheritdoc} - */ - public function gc($maxLifetime) - { - return $this->wrappedSessionHandler->gc($maxLifetime); - } - - /** - * {@inheritdoc} - */ - public function open($savePath, $sessionId) - { - return $this->wrappedSessionHandler->open($savePath, $sessionId); - } - - /** - * {@inheritdoc} - */ - public function read($sessionId) - { - $session = $this->wrappedSessionHandler->read($sessionId); - - $this->readSessions[$sessionId] = $session; - - return $session; - } - - /** - * {@inheritdoc} - */ - public function write($sessionId, $sessionData) - { - if (isset($this->readSessions[$sessionId]) && $sessionData === $this->readSessions[$sessionId]) { - return true; - } - - return $this->wrappedSessionHandler->write($sessionId, $sessionData); - } -} diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/MetadataBag.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/MetadataBag.php index 44212979c307db1a97e45add7997a93bc10f4714..892d004b5d6116454de3f16f339186b19191da3f 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/MetadataBag.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/MetadataBag.php @@ -39,7 +39,7 @@ class MetadataBag implements SessionBagInterface /** * @var array */ - protected $meta = array(self::CREATED => 0, self::UPDATED => 0, self::LIFETIME => 0); + protected $meta = array(); /** * Unix timestamp. @@ -48,21 +48,15 @@ class MetadataBag implements SessionBagInterface */ private $lastUsed; - /** - * @var integer - */ - private $updateThreshold; - /** * Constructor. * - * @param string $storageKey The key used to store bag in the session. - * @param integer $updateThreshold The time to wait between two UPDATED updates + * @param string $storageKey The key used to store bag in the session. */ - public function __construct($storageKey = '_sf2_meta', $updateThreshold = 0) + public function __construct($storageKey = '_sf2_meta') { $this->storageKey = $storageKey; - $this->updateThreshold = $updateThreshold; + $this->meta = array(self::CREATED => 0, self::UPDATED => 0, self::LIFETIME => 0); } /** @@ -74,11 +68,7 @@ public function initialize(array &$array) if (isset($array[self::CREATED])) { $this->lastUsed = $this->meta[self::UPDATED]; - - $timeStamp = time(); - if ($timeStamp - $array[self::UPDATED] >= $this->updateThreshold) { - $this->meta[self::UPDATED] = $timeStamp; - } + $this->meta[self::UPDATED] = time(); } else { $this->stampCreated(); } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/MockArraySessionStorage.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/MockArraySessionStorage.php index 8b1c2137f6a8a2e0433de5a27781f307c95f3e0a..a1fcf539f8fdab9a21b25a2d3b98a63855cf7e34 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/MockArraySessionStorage.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/MockArraySessionStorage.php @@ -12,6 +12,7 @@ namespace Symfony\Component\HttpFoundation\Session\Storage; use Symfony\Component\HttpFoundation\Session\SessionBagInterface; +use Symfony\Component\HttpFoundation\Session\Storage\MetadataBag; /** * MockArraySessionStorage mocks the session for unit tests. @@ -163,7 +164,6 @@ public function save() } // nothing to do since we don't persist the session data $this->closed = false; - $this->started = false; } /** @@ -249,7 +249,7 @@ public function getMetadataBag() */ protected function generateId() { - return hash('sha256', uniqid(mt_rand())); + return sha1(uniqid(mt_rand())); } protected function loadSession() diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/NativeSessionStorage.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/NativeSessionStorage.php index 083df9de40f9d63a6cdceb934d50978bda2baa5c..d86ff33d1db0aee5c8ff2f670d6660b2518aa140 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/NativeSessionStorage.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/NativeSessionStorage.php @@ -13,6 +13,7 @@ use Symfony\Component\HttpFoundation\Session\SessionBagInterface; use Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeSessionHandler; +use Symfony\Component\HttpFoundation\Session\Storage\MetadataBag; use Symfony\Component\HttpFoundation\Session\Storage\Proxy\NativeProxy; use Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy; use Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy; @@ -162,7 +163,7 @@ public function start() */ public function getId() { - if (!$this->started && !$this->closed) { + if (!$this->started) { return ''; // returning empty is consistent with session_id() behaviour } @@ -218,8 +219,6 @@ public function regenerate($destroy = false, $lifetime = null) } else { session_start(); } - - $this->loadSession(); } return $ret; @@ -238,7 +237,6 @@ public function save() } $this->closed = true; - $this->started = false; } /** diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/PhpBridgeSessionStorage.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/PhpBridgeSessionStorage.php index f70b5e6227af4a1ea7916f01b9649f390726908c..0f0020397ad55e38c92af50923ddcdce6d3a2b5c 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/PhpBridgeSessionStorage.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/PhpBridgeSessionStorage.php @@ -11,6 +11,7 @@ namespace Symfony\Component\HttpFoundation\Session\Storage; +use Symfony\Component\HttpFoundation\Session\Storage\MetadataBag; use Symfony\Component\HttpFoundation\Session\Storage\Proxy\AbstractProxy; use Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeSessionHandler; diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/SessionStorageInterface.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/SessionStorageInterface.php index 74f19c5216dcb8fa706d9ffc770184dc99f2fd69..711eaa29a3125f459697d72b030ab5e8cfe18aa6 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/SessionStorageInterface.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Session/Storage/SessionStorageInterface.php @@ -12,6 +12,7 @@ namespace Symfony\Component\HttpFoundation\Session\Storage; use Symfony\Component\HttpFoundation\Session\SessionBagInterface; +use Symfony\Component\HttpFoundation\Session\Storage\MetadataBag; /** * StorageInterface. diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/StreamedResponse.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/StreamedResponse.php index d9fece658f49a7c5d8e15750e4456c762449289d..ae579beaa954b9cbd1ee7c96b04373a98382994f 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/StreamedResponse.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/StreamedResponse.php @@ -34,9 +34,9 @@ class StreamedResponse extends Response /** * Constructor. * - * @param callable|null $callback A valid PHP callback or null to set it later - * @param integer $status The response status code - * @param array $headers An array of response headers + * @param mixed $callback A valid PHP callback + * @param integer $status The response status code + * @param array $headers An array of response headers * * @api */ @@ -51,13 +51,7 @@ public function __construct($callback = null, $status = 200, $headers = array()) } /** - * Factory method for chainability - * - * @param callable|null $callback A valid PHP callback or null to set it later - * @param integer $status The response status code - * @param array $headers An array of response headers - * - * @return StreamedResponse + * {@inheritDoc} */ public static function create($callback = null, $status = 200, $headers = array()) { @@ -67,7 +61,7 @@ public static function create($callback = null, $status = 200, $headers = array( /** * Sets the PHP callback associated with this Response. * - * @param callable $callback A valid PHP callback + * @param mixed $callback A valid PHP callback * * @throws \LogicException */ diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/BinaryFileResponseTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/BinaryFileResponseTest.php index 75863168d1dbd8d9acefa49f4019799132d20937..c3d324fa9f07c37c32632cb45576155c201088aa 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/BinaryFileResponseTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/BinaryFileResponseTest.php @@ -84,73 +84,12 @@ 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=-35', 0, 35, 'bytes 0-34/35'), + array('bytes=-40', 0, 35, 'bytes 0-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')->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()); - $this->assertEquals('binary', $response->headers->get('Content-Transfer-Encoding')); - } - - 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')->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('binary', $response->headers->get('Content-Transfer-Encoding')); - #$this->assertEquals('', $response->headers->get('Content-Range')); - } - - public function provideInvalidRanges() - { - return array( - array('bytes=-40'), - array('bytes=30-40') + array('bytes=30-40', 30, 5, 'bytes 30-34/35') ); } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/CookieTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/CookieTest.php index def1c7a378f2160586f3a9c6f1e16cec2fd207ab..f4c9ec157450348936cd6e0f489794270989fdc2 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/CookieTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/CookieTest.php @@ -38,7 +38,7 @@ public function invalidNames() /** * @dataProvider invalidNames - * @expectedException \InvalidArgumentException + * @expectedException InvalidArgumentException * @covers Symfony\Component\HttpFoundation\Cookie::__construct */ public function testInstantiationThrowsExceptionIfCookieNameContainsInvalidCharacters($name) @@ -47,11 +47,11 @@ public function testInstantiationThrowsExceptionIfCookieNameContainsInvalidChara } /** - * @expectedException \InvalidArgumentException + * @expectedException InvalidArgumentException */ public function testInvalidExpiration() { - $cookie = new Cookie('MyCookie', 'foo', 'bar'); + $cookie = new Cookie('MyCookie', 'foo','bar'); } /** diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/File/MimeType/MimeTypeTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/File/MimeType/MimeTypeTest.php index 1078fc2d414af2ebbae7d9372b39fd4861fb14d7..7bf10a297e19cf60723d20fdb0e4a971281620fe 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/File/MimeType/MimeTypeTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/File/MimeType/MimeTypeTest.php @@ -9,7 +9,7 @@ * file that was distributed with this source code. */ -namespace Symfony\Component\HttpFoundation\Tests\File\MimeType; +namespace Symfony\Component\HttpFoundation\Tests\File; use Symfony\Component\HttpFoundation\File\File; use Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesser; diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/File/UploadedFileTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/File/UploadedFileTest.php index 5b48970d5e15897bc00db702fc7f6edde66fad7c..f6ea340091ba565434ea492130e96a6d232a9195 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/File/UploadedFileTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/File/UploadedFileTest.php @@ -224,7 +224,7 @@ public function testIsValid() null, filesize(__DIR__.'/Fixtures/test.gif'), UPLOAD_ERR_OK, - true + true ); $this->assertTrue($file->isValid()); diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/JsonResponseTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/JsonResponseTest.php index ef392ca59dbe682e841ccef0ebf39b87bbb9d832..8f1383fba9b828615e5aa4830faf76d1602ebe01 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/JsonResponseTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/JsonResponseTest.php @@ -159,27 +159,18 @@ public function testSetCallback() $this->assertEquals('text/javascript', $response->headers->get('Content-Type')); } - public function testJsonEncodeFlags() - { - $response = new JsonResponse('<>\'&"'); - - $this->assertEquals('"\u003C\u003E\u0027\u0026\u0022"', $response->getContent()); - } - - /** - * @expectedException \InvalidArgumentException - */ public function testSetCallbackInvalidIdentifier() { $response = new JsonResponse('foo'); + + $this->setExpectedException('InvalidArgumentException'); $response->setCallback('+invalid'); } - /** - * @expectedException \InvalidArgumentException - */ - public function testSetContent() + public function testJsonEncodeFlags() { - JsonResponse::create("\xB1\x31"); + $response = new JsonResponse('<>\'&"'); + + $this->assertEquals('"\u003C\u003E\u0027\u0026\u0022"', $response->getContent()); } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ParameterBagTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ParameterBagTest.php index 7f4f243b481bb94f5a79d3be0bba710fc2d87a72..6cd42bf91dd0fd31594175d4681dea5af3277ea9 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ParameterBagTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ParameterBagTest.php @@ -205,10 +205,10 @@ public function testFilter() $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->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->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, diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/RedirectResponseTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/RedirectResponseTest.php index 2a097d6fd422a5b7233879e3846664d0f093c1fb..330d9fee51fbfdaeb1e17e483049f0b8ba1425ef 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/RedirectResponseTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/RedirectResponseTest.php @@ -11,7 +11,7 @@ namespace Symfony\Component\HttpFoundation\Tests; -use Symfony\Component\HttpFoundation\RedirectResponse; +use \Symfony\Component\HttpFoundation\RedirectResponse; class RedirectResponseTest extends \PHPUnit_Framework_TestCase { diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/RequestTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/RequestTest.php index db331f283d05b6bfff8e48d72a2e14f953cdfdaa..ba95c4aea965d0adbd4cdeb6d0c74f4cf70ed7cc 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/RequestTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/RequestTest.php @@ -211,10 +211,6 @@ public function testCreate() $this->assertEquals('testnopass', $request->getUser()); $this->assertNull($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()); } /** @@ -254,6 +250,9 @@ public function testCreateCheckPrecedence() $this->assertEquals('foo=bar', $request->getQueryString()); } + /** + * @covers Symfony\Component\HttpFoundation\Request::duplicate + */ public function testDuplicate() { $request = new Request(array('foo' => 'bar'), array('foo' => 'bar'), array('foo' => 'bar'), array(), array(), array('HTTP_FOO' => 'bar')); @@ -272,21 +271,6 @@ public function testDuplicate() $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 @@ -669,18 +653,18 @@ public function testGetHost() $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'); + $request->initialize(array(), array(), array(), array(), array(), array('HTTP_HOST' => 'www.exemple.com')); + $this->assertEquals('www.exemple.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'); + $request->initialize(array(), array(), array(), array(), array(), array('HTTP_HOST' => 'www.exemple.com:8080')); + $this->assertEquals('www.exemple.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.exemple.com')); + $this->assertEquals('www.exemple.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')); + $request->initialize(array(), array(), array(), array(), array(), array('SERVER_NAME' => 'www.exemple.com', 'HTTP_HOST' => 'www.host.com')); $this->assertEquals('www.host.com', $request->getHost(), '->getHost() value from Host header has priority over SERVER_NAME '); } @@ -715,31 +699,12 @@ public function testGetPort() )); $port = $request->getPort(); - $this->assertEquals(80, $port, 'If X_FORWARDED_PROTO is set to HTTP return 80.'); - - $request = Request::create('http://example.com', 'GET', array(), array(), array(), array( - 'HTTP_X_FORWARDED_PROTO' => 'On' - )); - $port = $request->getPort(); - $this->assertEquals(443, $port, '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' - )); - $port = $request->getPort(); - $this->assertEquals(443, $port, '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.'); - + $this->assertEquals(80, $port, 'If X_FORWARDED_PROTO is set to http return 80.'); Request::setTrustedProxies(array()); } /** - * @expectedException \RuntimeException + * @expectedException RuntimeException */ public function testGetHostWithFakeHttpHostValue() { @@ -881,14 +846,14 @@ public function testGetClientIpsProvider() public function testGetContentWorksTwiceInDefaultMode() { - $req = new Request(); + $req = new Request; $this->assertEquals('', $req->getContent()); $this->assertEquals('', $req->getContent()); } public function testGetContentReturnsResource() { - $req = new Request(); + $req = new Request; $retval = $req->getContent(true); $this->assertInternalType('resource', $retval); $this->assertEquals("", fread($retval, 1)); @@ -896,12 +861,12 @@ public function testGetContentReturnsResource() } /** - * @expectedException \LogicException + * @expectedException LogicException * @dataProvider getContentCantBeCalledTwiceWithResourcesProvider */ public function testGetContentCantBeCalledTwiceWithResources($first, $second) { - $req = new Request(); + $req = new Request; $req->getContent($first); $req->getContent($second); } @@ -1001,12 +966,6 @@ public function testOverrideGlobals() $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); - // restore initial $_SERVER array $_SERVER = $server; } @@ -1163,22 +1122,6 @@ public function testGetCharsets() $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(); @@ -1361,7 +1304,7 @@ public function getBaseUrlData() */ public function testUrlencodedStringPrefix($string, $prefix, $expect) { - $request = new Request(); + $request = new Request; $me = new \ReflectionMethod($request, 'getUrlencodedPrefix'); $me->setAccessible(true); @@ -1442,13 +1385,6 @@ public function testTrustedProxies() $this->assertEquals(443, $request->getPort()); $this->assertTrue($request->isSecure()); - // check various X_FORWARDED_PROTO header values - $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'); @@ -1477,24 +1413,6 @@ public function testTrustedProxies() 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 */ @@ -1507,7 +1425,7 @@ public function testIISRequestUri($headers, $server, $expectedRequestUri) $this->assertEquals($expectedRequestUri, $request->getRequestUri(), '->getRequestUri() is correct'); $subRequestUri = '/bar/foo'; - $subRequest = Request::create($subRequestUri, 'get', array(), array(), array(), $request->server->all()); + $subRequest = $request::create($subRequestUri, 'get', array(), array(), array(), $request->server->all()); $this->assertEquals($subRequestUri, $subRequest->getRequestUri(), '->getRequestUri() is correct in sub request'); } @@ -1608,35 +1526,12 @@ public function testTrustedHosts() // 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); - } } class RequestContentProxy extends Request @@ -1646,11 +1541,3 @@ 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/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ResponseTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ResponseTest.php index 11eb38c72372fa23feea71fcceb3dee626680360..3a084954c4430b0e715d1d1ccc34781a3fb0b62c 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ResponseTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ResponseTest.php @@ -79,19 +79,6 @@ public function testIsCacheable() $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(); @@ -131,50 +118,6 @@ public function testIsNotModified() $this->assertFalse($modified); } - public function testIsNotModifiedNotSafe() - { - $request = Request::create('/homepage', 'POST'); - - $response = new Response(); - $this->assertFalse($response->isNotModified($request)); - } - - public function testIsNotModifiedLastModified() - { - $modified = 'Sun, 25 Aug 2013 18: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', ''); - $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 testIsValidateable() { $response = new Response('', 200, array('Last-Modified' => $this->createDateTimeOneHourAgo()->format(DATE_RFC2822))); @@ -418,44 +361,11 @@ 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()); - $response->setContent('content'); - $response->setStatusCode(304); - $response->prepare($request); $this->assertEquals('', $response->getContent()); } - 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'); @@ -724,7 +634,7 @@ public function testSetContent($content) } /** - * @expectedException \UnexpectedValueException + * @expectedException UnexpectedValueException * @dataProvider invalidContentProvider */ public function testSetContentInvalid($content) @@ -758,7 +668,7 @@ public function testSettersAreChainable() public function validContentProvider() { return array( - 'obj' => array(new StringableObject()), + 'obj' => array(new StringableObject), 'string' => array('Foo'), 'int' => array(2), ); diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ServerBagTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ServerBagTest.php index 89920f1fbc546b1103e6cc1fcebaf185e57c072d..f8e487d7f87435061a8602618f129d7fbc1b7fa9 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ServerBagTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/ServerBagTest.php @@ -89,28 +89,6 @@ public function testHttpBasicAuthWithPhpCgiEmptyPassword() ), $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 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'; diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcacheSessionHandlerTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcacheSessionHandlerTest.php index 8d38ab3de991ec38b084f30cfc183ca646bdc0d9..da0440d4289e862fc867c504ef2a5a16e4b3ab65 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcacheSessionHandlerTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcacheSessionHandlerTest.php @@ -121,12 +121,4 @@ public function getOptionFixtures() 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/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php index 72be3272526f6ebfed93d01abf720fad45151c09..985fae488877178a0d840c21338c7907072435be 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MemcachedSessionHandlerTest.php @@ -116,12 +116,4 @@ public function getOptionFixtures() 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/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php index d907ce4a9031d1f24c2ef3661dd8af3521fffdf1..1cfd1175cbe188bbd52f6c2c90ee412dca6b23d8 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php @@ -31,7 +31,7 @@ protected function setUp() $this->markTestSkipped('MongoDbSessionHandler requires the PHP "mongo" extension.'); } - $mongoClass = version_compare(phpversion('mongo'), '1.3.0', '<') ? 'Mongo' : 'MongoClient'; + $mongoClass = (version_compare(phpversion('mongo'), '1.3.0', '<')) ? 'Mongo' : 'MongoClient'; $this->mongo = $this->getMockBuilder($mongoClass) ->disableOriginalConstructor() @@ -49,7 +49,7 @@ protected function setUp() } /** - * @expectedException \InvalidArgumentException + * @expectedException InvalidArgumentException */ public function testConstructorShouldThrowExceptionForInvalidMongo() { @@ -57,7 +57,7 @@ public function testConstructorShouldThrowExceptionForInvalidMongo() } /** - * @expectedException \InvalidArgumentException + * @expectedException InvalidArgumentException */ public function testConstructorShouldThrowExceptionForMissingOptions() { @@ -90,7 +90,7 @@ public function testWrite() $collection->expects($this->once()) ->method('update') - ->will($this->returnCallback(function ($criteria, $updateData, $options) use ($that, &$data) { + ->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); @@ -118,7 +118,7 @@ public function testReplaceSessionData() $collection->expects($this->exactly(2)) ->method('update') - ->will($this->returnCallback(function ($criteria, $updateData, $options) use (&$data) { + ->will($this->returnCallback(function($criteria, $updateData, $options) use (&$data) { $data = $updateData; })); @@ -161,21 +161,11 @@ public function testGc() $collection->expects($this->once()) ->method('remove') - ->will($this->returnCallback(function ($criteria) use ($that) { + ->will($this->returnCallback(function($criteria) use ($that) { $that->assertInstanceOf('MongoDate', $criteria[$that->options['time_field']]['$lt']); $that->assertGreaterThanOrEqual(time() - -1, $criteria[$that->options['time_field']]['$lt']->sec); })); $this->assertTrue($this->storage->gc(-1)); } - - public function testGetConnection() - { - $method = new \ReflectionMethod($this->storage, 'getMongo'); - $method->setAccessible(true); - - $mongoClass = (version_compare(phpversion('mongo'), '1.3.0', '<')) ? '\Mongo' : '\MongoClient'; - - $this->assertInstanceOf($mongoClass, $method->invoke($this->storage)); - } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/NullSessionHandlerTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/NullSessionHandlerTest.php index 371ab6f3fa067e5c3a6400115893465c9d15861f..45a47ce8fa563738e2ae669a1c32c4332ca9dd3b 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/NullSessionHandlerTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/NullSessionHandlerTest.php @@ -22,7 +22,7 @@ * * @runTestsInSeparateProcesses */ -class NullSessionHandlerTest extends \PHPUnit_Framework_TestCase +class NullSessionStorageTest extends \PHPUnit_Framework_TestCase { public function testSaveHandlers() { diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php index 06da0096f3c476290be18ab1b6cb4fefbd3cd4ea..1abf3844c6fdfc2544b80a4bf307a08d4a34794a 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/PdoSessionHandlerTest.php @@ -98,14 +98,4 @@ public function testSessionGC() $storage->gc(-1); $this->assertEquals(0, count($this->pdo->query('SELECT * FROM sessions')->fetchAll())); } - - public function testGetConnection() - { - $storage = new PdoSessionHandler($this->pdo, array('db_table' => 'sessions'), array()); - - $method = new \ReflectionMethod($storage, 'getConnection'); - $method->setAccessible(true); - - $this->assertInstanceOf('\PDO', $method->invoke($storage)); - } } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/WriteCheckSessionHandlerTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/WriteCheckSessionHandlerTest.php deleted file mode 100644 index dcfd94bd1ecfbe4b5886186e3f19a8f444dc25fd..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/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->assertEquals(true, $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->assertEquals(true, $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->assertEquals(true, $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->assertEquals(true, $writeCheckSessionHandler->write('foo', 'baZZZ')); - } -} diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MetadataBagTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MetadataBagTest.php index c502c38ae613e23f6d15646848dbe1688d606692..ef70281ce08d30d50122e44dc1f98575702ca5d4 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MetadataBagTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MetadataBagTest.php @@ -43,23 +43,27 @@ protected function tearDown() public function testInitialize() { - $sessionMetadata = array(); + $p = new \ReflectionProperty('Symfony\Component\HttpFoundation\Session\Storage\MetadataBag', 'meta'); + $p->setAccessible(true); $bag1 = new MetadataBag(); - $bag1->initialize($sessionMetadata); + $array = array(); + $bag1->initialize($array); $this->assertGreaterThanOrEqual(time(), $bag1->getCreated()); $this->assertEquals($bag1->getCreated(), $bag1->getLastUsed()); sleep(1); $bag2 = new MetadataBag(); - $bag2->initialize($sessionMetadata); + $array2 = $p->getValue($bag1); + $bag2->initialize($array2); $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); + $array3 = $p->getValue($bag2); + $bag3->initialize($array3); $this->assertEquals($bag1->getCreated(), $bag3->getCreated()); $this->assertGreaterThan($bag2->getLastUsed(), $bag3->getLastUsed()); $this->assertNotEquals($bag3->getCreated(), $bag3->getLastUsed()); @@ -100,36 +104,4 @@ 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/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MockArraySessionStorageTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MockArraySessionStorageTest.php index c56ea4a60071e038cf603bce6db9ac5d29ca07b6..2a6f6bb7e8fe56019f7e5fae1bd0f65d82a98530 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MockArraySessionStorageTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MockArraySessionStorageTest.php @@ -97,7 +97,7 @@ public function testGetId() } /** - * @expectedException \RuntimeException + * @expectedException RuntimeException */ public function testUnstartedSave() { diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MockFileSessionStorageTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MockFileSessionStorageTest.php index 329c090d8d9171f8f37454ba8f5d29f986f65837..d42c62a25ca07ad3c62ee7bf567a06884e73bfe0 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MockFileSessionStorageTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/MockFileSessionStorageTest.php @@ -107,7 +107,7 @@ public function testMultipleInstances() } /** - * @expectedException \RuntimeException + * @expectedException RuntimeException */ public function testSaveWithoutStart() { diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/NativeSessionStorageTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/NativeSessionStorageTest.php index 691ee1459347a921910943fec55e5e79bda0c363..14ae52f97be356a126af5f9783dc8499bd1c4b43 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/NativeSessionStorageTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/NativeSessionStorageTest.php @@ -59,7 +59,7 @@ protected function tearDown() protected function getStorage(array $options = array()) { $storage = new NativeSessionStorage($options); - $storage->registerBag(new AttributeBag()); + $storage->registerBag(new AttributeBag); return $storage; } @@ -85,12 +85,8 @@ public function testGetId() { $storage = $this->getStorage(); $this->assertEquals('', $storage->getId()); - $storage->start(); $this->assertNotEquals('', $storage->getId()); - - $storage->save(); - $this->assertNotEquals('', $storage->getId()); } public function testRegenerate() @@ -158,7 +154,7 @@ public function testCookieOptions() public function testSetSaveHandlerException() { $storage = $this->getStorage(); - $storage->setSaveHandler(new \stdClass); + $storage->setSaveHandler(new \StdClass); } public function testSetSaveHandler53() diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/PhpBridgeSessionStorageTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/PhpBridgeSessionStorageTest.php index 0510f3fe9a5a87a72016e8b46ab1e18a19641f50..d5a66d61efc5f3c61dbfc9c54e8d973baef9fc73 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/PhpBridgeSessionStorageTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/PhpBridgeSessionStorageTest.php @@ -23,7 +23,7 @@ * * @runTestsInSeparateProcesses */ -class PhpBridgeSessionStorageTest extends \PHPUnit_Framework_TestCase +class PhpSessionStorageTest extends \PHPUnit_Framework_TestCase { private $savePath; @@ -53,7 +53,7 @@ protected function tearDown() protected function getStorage() { $storage = new PhpBridgeSessionStorage(); - $storage->registerBag(new AttributeBag()); + $storage->registerBag(new AttributeBag); return $storage; } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Proxy/AbstractProxyTest.php b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Proxy/AbstractProxyTest.php index 58b632aeb0e50831f9293df655e1b0374e7ee6de..6b8bba0d5b0d35aa23a4dacd28c7361bcb638500 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Proxy/AbstractProxyTest.php +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Proxy/AbstractProxyTest.php @@ -22,7 +22,7 @@ class ConcreteProxy extends AbstractProxy class ConcreteSessionHandlerInterfaceProxy extends AbstractProxy implements \SessionHandlerInterface { - public function open($savePath, $sessionName) + public function open($savePath, $sessionName) { } diff --git a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/composer.json b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/composer.json index 09f5b24aa0aedae9ba67aa08fe27368dbfcb6f70..f77e08ebd6ace99f45752d2ff7ba9dcd3f435bcd 100644 --- a/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/composer.json +++ b/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/composer.json @@ -26,7 +26,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Bundle/Bundle.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Bundle/Bundle.php index 2fdbe1ccd0faa0593da28b19a95199b8c1208cde..215d1e1862d9bd419be7352a5ab37469bf1d960b 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Bundle/Bundle.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Bundle/Bundle.php @@ -29,8 +29,8 @@ abstract class Bundle extends ContainerAware implements BundleInterface { protected $name; + protected $reflected; protected $extension; - protected $path; /** * Boots the Bundle. @@ -109,9 +109,11 @@ public function getContainerExtension() */ public function getNamespace() { - $class = get_class($this); + if (null === $this->reflected) { + $this->reflected = new \ReflectionObject($this); + } - return substr($class, 0, strrpos($class, '\\')); + return $this->reflected->getNamespaceName(); } /** @@ -123,12 +125,11 @@ public function getNamespace() */ public function getPath() { - if (null === $this->path) { - $reflected = new \ReflectionObject($this); - $this->path = dirname($reflected->getFileName()); + if (null === $this->reflected) { + $this->reflected = new \ReflectionObject($this); } - return $this->path; + return dirname($this->reflected->getFileName()); } /** @@ -159,7 +160,7 @@ final public function getName() $name = get_class($this); $pos = strrpos($name, '\\'); - return $this->name = false === $pos ? $name : substr($name, $pos + 1); + return $this->name = false === $pos ? $name : substr($name, $pos + 1); } /** @@ -187,14 +188,7 @@ public function registerCommands(Application $application) if ($relativePath = $file->getRelativePath()) { $ns .= '\\'.strtr($relativePath, '/', '\\'); } - $class = $ns.'\\'.$file->getBasename('.php'); - if ($this->container) { - $alias = 'console.command.'.strtolower(str_replace('\\', '_', $class)); - if ($this->container->has($alias)) { - continue; - } - } - $r = new \ReflectionClass($class); + $r = new \ReflectionClass($ns.'\\'.$file->getBasename('.php')); if ($r->isSubclassOf('Symfony\\Component\\Console\\Command\\Command') && !$r->isAbstract() && !$r->getConstructor()->getNumberOfRequiredParameters()) { $application->add($r->newInstance()); } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/CHANGELOG.md b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/CHANGELOG.md index 66219ae11637b5cf4d606707455601b0e97e8756..c06dd3fa57e07261609ac31a82eae46349b457f1 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/CHANGELOG.md +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/CHANGELOG.md @@ -1,12 +1,6 @@ CHANGELOG ========= -2.4.0 ------ - - * added event listeners for the session - * added the KernelEvents::FINISH_REQUEST event - 2.3.0 ----- diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/CacheWarmer/CacheWarmerAggregate.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/CacheWarmer/CacheWarmerAggregate.php index bd96057ded64c8e6e576a2febd6a162311b28c9a..eb26ac59e62dca1052d0c0e0507092a2b8846694 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/CacheWarmer/CacheWarmerAggregate.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/CacheWarmer/CacheWarmerAggregate.php @@ -18,14 +18,13 @@ */ class CacheWarmerAggregate implements CacheWarmerInterface { - protected $warmers = array(); - protected $optionalsEnabled = false; + protected $warmers; + protected $optionalsEnabled; public function __construct(array $warmers = array()) { - foreach ($warmers as $warmer) { - $this->add($warmer); - } + $this->setWarmers($warmers); + $this->optionalsEnabled = false; } public function enableOptionalWarmers() diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Client.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Client.php index b40d7006d696cde716ad206097a7d472b6cba397..bb427b35af22d441810ed7db26bdc4992003a237 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Client.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Client.php @@ -11,15 +11,16 @@ namespace Symfony\Component\HttpKernel; +use Symfony\Component\HttpFoundation\File\UploadedFile; +use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\HttpFoundation\Response; use Symfony\Component\BrowserKit\Client as BaseClient; use Symfony\Component\BrowserKit\Request as DomRequest; use Symfony\Component\BrowserKit\Response as DomResponse; use Symfony\Component\BrowserKit\Cookie as DomCookie; use Symfony\Component\BrowserKit\History; use Symfony\Component\BrowserKit\CookieJar; -use Symfony\Component\HttpFoundation\File\UploadedFile; -use Symfony\Component\HttpFoundation\Request; -use Symfony\Component\HttpFoundation\Response; +use Symfony\Component\HttpKernel\TerminableInterface; /** * Client simulates a browser and makes requests to a Kernel object. @@ -42,11 +43,11 @@ class Client extends BaseClient */ public function __construct(HttpKernelInterface $kernel, array $server = array(), History $history = null, CookieJar $cookieJar = null) { - // These class properties must be set before calling the parent constructor, as it may depend on it. $this->kernel = $kernel; - $this->followRedirects = false; parent::__construct($server, $history, $cookieJar); + + $this->followRedirects = false; } /** @@ -103,7 +104,7 @@ protected function getScript($request) $requirePath = str_replace("'", "\\'", $r->getFileName()); $symfonyPath = str_replace("'", "\\'", realpath(__DIR__.'/../../..')); - $code = <<<EOF + return <<<EOF <?php require_once '$requirePath'; @@ -113,22 +114,7 @@ protected function getScript($request) \$loader->register(); \$kernel = unserialize('$kernel'); -\$request = unserialize('$request'); -EOF; - - return $code.$this->getHandleScript(); - } - - protected function getHandleScript() - { - return <<<'EOF' -$response = $kernel->handle($request); - -if ($kernel instanceof Symfony\Component\HttpKernel\TerminableInterface) { - $kernel->terminate($request, $response); -} - -echo serialize($response); +echo serialize(\$kernel->handle(unserialize('$request'))); EOF; } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Controller/ControllerResolver.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Controller/ControllerResolver.php index 46484498474c12005edb0168a2230d463075bf1e..047ade1062cad87e2bd512f1c64f0cd90d9880a2 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Controller/ControllerResolver.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Controller/ControllerResolver.php @@ -40,11 +40,18 @@ public function __construct(LoggerInterface $logger = null) } /** - * {@inheritdoc} + * Returns the Controller instance associated with a Request. * * This method looks for a '_controller' request attribute that represents * the controller name (a string like ClassName::MethodName). * + * @param Request $request A Request instance + * + * @return mixed|Boolean A PHP callable representing the Controller, + * or false if this resolver is not able to determine the controller + * + * @throws \InvalidArgumentException|\LogicException If the controller can't be found + * * @api */ public function getController(Request $request) @@ -79,7 +86,14 @@ public function getController(Request $request) } /** - * {@inheritdoc} + * Returns the arguments to pass to the controller. + * + * @param Request $request A Request instance + * @param mixed $controller A PHP callable + * + * @return array + * + * @throws \RuntimeException When value for argument given is not provided * * @api */ diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Controller/ControllerResolverInterface.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Controller/ControllerResolverInterface.php index 6f805ed2dab77586fd3962f1d5dad882f435b6d5..f58f50db53292d2c777c9a221a277768014c12e6 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Controller/ControllerResolverInterface.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Controller/ControllerResolverInterface.php @@ -38,10 +38,10 @@ interface ControllerResolverInterface * * @param Request $request A Request instance * - * @return callable|false A PHP callable representing the Controller, - * or false if this resolver is not able to determine the controller + * @return mixed|Boolean A PHP callable representing the Controller, + * or false if this resolver is not able to determine the controller * - * @throws \LogicException If the controller can't be found + * @throws \InvalidArgumentException|\LogicException If the controller can't be found * * @api */ @@ -50,8 +50,8 @@ public function getController(Request $request); /** * Returns the arguments to pass to the controller. * - * @param Request $request A Request instance - * @param callable $controller A PHP callable + * @param Request $request A Request instance + * @param mixed $controller A PHP callable * * @return array An array of arguments to pass to the controller * diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/ConfigDataCollector.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/ConfigDataCollector.php index 51b6d7ae01a44618f246a8a78af39396107ddfb6..47529fd19048d2b01c165d7e6f8d71e537cb5658 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/ConfigDataCollector.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/ConfigDataCollector.php @@ -13,6 +13,7 @@ use Symfony\Component\HttpKernel\KernelInterface; use Symfony\Component\HttpKernel\Kernel; +use Symfony\Component\HttpKernel\DataCollector\DataCollector; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/DataCollector.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/DataCollector.php index 1835938a07263ac046b81328bbcbe45bbae068a7..7d9c28943b72f419899ec85b9859d3d8b2ae179d 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/DataCollector.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/DataCollector.php @@ -11,25 +11,17 @@ namespace Symfony\Component\HttpKernel\DataCollector; -use Symfony\Component\HttpKernel\DataCollector\Util\ValueExporter; - /** * DataCollector. * * Children of this class must store the collected data in the data property. * * @author Fabien Potencier <fabien@symfony.com> - * @author Bernhard Schussek <bschussek@symfony.com> */ abstract class DataCollector implements DataCollectorInterface, \Serializable { protected $data; - /** - * @var ValueExporter - */ - private $valueExporter; - public function serialize() { return serialize($this->data); @@ -49,10 +41,35 @@ public function unserialize($data) */ protected function varToString($var) { - if (null === $this->valueExporter) { - $this->valueExporter = new ValueExporter(); + if (is_object($var)) { + return sprintf('Object(%s)', get_class($var)); + } + + if (is_array($var)) { + $a = array(); + foreach ($var as $k => $v) { + $a[] = sprintf('%s => %s', $k, $this->varToString($v)); + } + + return sprintf("Array(%s)", implode(', ', $a)); + } + + if (is_resource($var)) { + return sprintf('Resource(%s)', get_resource_type($var)); + } + + if (null === $var) { + return 'null'; + } + + if (false === $var) { + return 'false'; + } + + if (true === $var) { + return 'true'; } - return $this->valueExporter->exportValue($var); + return (string) $var; } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/EventDataCollector.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/EventDataCollector.php index 418ed686c64d8456e93cb3e320bba110c35c1bbb..cd7f7870177c2bc836f5920a9addc2cb8a08aecb 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/EventDataCollector.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/EventDataCollector.php @@ -13,7 +13,6 @@ use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; -use Symfony\Component\EventDispatcher\EventDispatcherInterface; use Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcherInterface; /** @@ -21,15 +20,8 @@ * * @author Fabien Potencier <fabien@symfony.com> */ -class EventDataCollector extends DataCollector implements LateDataCollectorInterface +class EventDataCollector extends DataCollector { - protected $dispatcher; - - public function __construct(EventDispatcherInterface $dispatcher = null) - { - $this->dispatcher = $dispatcher; - } - /** * {@inheritdoc} */ @@ -41,14 +33,6 @@ public function collect(Request $request, Response $response, \Exception $except ); } - public function lateCollect() - { - if ($this->dispatcher instanceof TraceableEventDispatcherInterface) { - $this->setCalledListeners($this->dispatcher->getCalledListeners()); - $this->setNotCalledListeners($this->dispatcher->getNotCalledListeners()); - } - } - /** * Sets the called listeners. * diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/LateDataCollectorInterface.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/LateDataCollectorInterface.php deleted file mode 100644 index 012332de479f742c4df52b8c4077af57d53ef6e8..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/LateDataCollectorInterface.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\HttpKernel\DataCollector; - -/** - * LateDataCollectorInterface. - * - * @author Fabien Potencier <fabien@symfony.com> - */ -interface LateDataCollectorInterface -{ - /** - * Collects data as late as possible. - */ - public function lateCollect(); -} diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/LoggerDataCollector.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/LoggerDataCollector.php index ba2ea44c5ed32f986d752f417b85e54421346910..f08720e8073bb9e877b838e526c3988ef06edda1 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/LoggerDataCollector.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/LoggerDataCollector.php @@ -21,7 +21,7 @@ * * @author Fabien Potencier <fabien@symfony.com> */ -class LoggerDataCollector extends DataCollector implements LateDataCollectorInterface +class LoggerDataCollector extends DataCollector { private $logger; @@ -36,14 +36,6 @@ public function __construct($logger = null) * {@inheritdoc} */ public function collect(Request $request, Response $response, \Exception $exception = null) - { - // everything is done as late as possible - } - - /** - * {@inheritdoc} - */ - public function lateCollect() { if (null !== $this->logger) { $this->data = array( diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/MemoryDataCollector.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/MemoryDataCollector.php index e36f1f457e7b139c1b384874853ee5ba90050ea7..5540a1b27ac93ddb9a44e9424ef995312cfe0b00 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/MemoryDataCollector.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/MemoryDataCollector.php @@ -19,13 +19,13 @@ * * @author Fabien Potencier <fabien@symfony.com> */ -class MemoryDataCollector extends DataCollector implements LateDataCollectorInterface +class MemoryDataCollector extends DataCollector { public function __construct() { $this->data = array( 'memory' => 0, - 'memory_limit' => $this->convertToBytes(ini_get('memory_limit')), + 'memory_limit' => $this->convertToBytes(strtolower(ini_get('memory_limit'))), ); } @@ -37,14 +37,6 @@ public function collect(Request $request, Response $response, \Exception $except $this->updateMemoryUsage(); } - /** - * {@inheritdoc} - */ - public function lateCollect() - { - $this->updateMemoryUsage(); - } - /** * Gets the memory. * @@ -87,23 +79,13 @@ private function convertToBytes($memoryLimit) return -1; } - $memoryLimit = strtolower($memoryLimit); - $max = strtolower(ltrim($memoryLimit, '+')); - if (0 === strpos($max, '0x')) { - $max = intval($max, 16); - } elseif (0 === strpos($max, '0')) { - $max = intval($max, 8); - } else { - $max = intval($max); - } + if (preg_match('#^\+?(0x?)?(.*?)([kmg]?)$#', $memoryLimit, $match)) { + $shifts = array('' => 0, 'k' => 10, 'm' => 20, 'g' => 30); + $bases = array('' => 10, '0' => 8, '0x' => 16); - switch (substr($memoryLimit, -1)) { - case 't': $max *= 1024; - case 'g': $max *= 1024; - case 'm': $max *= 1024; - case 'k': $max *= 1024; + return intval($match[2], $bases[$match[1]]) << $shifts[$match[3]]; } - return $max; + return 0; } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/RequestDataCollector.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/RequestDataCollector.php index 4473605e843fc6020bb243bd604ec858c490b852..934c8477a52888f8fc7cb132e7b5c6d6a1366a22 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/RequestDataCollector.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/RequestDataCollector.php @@ -50,15 +50,11 @@ public function collect(Request $request, Response $response, \Exception $except $attributes = array(); foreach ($request->attributes->all() as $key => $value) { - if ('_route' === $key && is_object($value)) { - $attributes['_route'] = $this->varToString($value->getPath()); - } elseif ('_route_params' === $key) { - foreach ($value as $key => $v) { - $attributes['_route_params'][$key] = $this->varToString($v); - } - } else { - $attributes[$key] = $this->varToString($value); + if ('_route' == $key && is_object($value)) { + $value = $value->getPath(); } + + $attributes[$key] = $this->varToString($value); } $content = null; diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/RouterDataCollector.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/RouterDataCollector.php index 8757412c63c5d7d8633d734ceb836c173f43397f..80e250ad0f689c653fea8d05a6137ee2305e0853 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/RouterDataCollector.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/RouterDataCollector.php @@ -14,6 +14,7 @@ use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\RedirectResponse; +use Symfony\Component\HttpKernel\DataCollector\DataCollector; use Symfony\Component\HttpKernel\Event\FilterControllerEvent; /** @@ -49,8 +50,6 @@ public function collect(Request $request, Response $response, \Exception $except $this->data['route'] = $this->guessRoute($request, $this->controllers[$request]); } } - - unset($this->controllers[$request]); } protected function guessRoute(Request $request, $controller) diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/TimeDataCollector.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/TimeDataCollector.php index 4b5b00f0bf369aa7026fc5915b6fdc9931b1cd7c..74d7616bf9cfc31a64cd4fe49940e84d61720167 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/TimeDataCollector.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/TimeDataCollector.php @@ -11,24 +11,23 @@ namespace Symfony\Component\HttpKernel\DataCollector; +use Symfony\Component\HttpKernel\DataCollector\DataCollector; +use Symfony\Component\HttpKernel\KernelInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; -use Symfony\Component\HttpKernel\KernelInterface; /** * TimeDataCollector. * * @author Fabien Potencier <fabien@symfony.com> */ -class TimeDataCollector extends DataCollector implements LateDataCollectorInterface +class TimeDataCollector extends DataCollector { protected $kernel; - protected $stopwatch; - public function __construct(KernelInterface $kernel = null, $stopwatch = null) + public function __construct(KernelInterface $kernel = null) { $this->kernel = $kernel; - $this->stopwatch = $stopwatch; } /** @@ -43,23 +42,11 @@ public function collect(Request $request, Response $response, \Exception $except } $this->data = array( - 'token' => $response->headers->get('X-Debug-Token'), 'start_time' => $startTime * 1000, 'events' => array(), ); } - /** - * {@inheritdoc} - */ - public function lateCollect() - { - if (null !== $this->stopwatch && isset($this->data['token'])) { - $this->setEvents($this->stopwatch->getSectionEvents($this->data['token'])); - } - unset($this->data['token']); - } - /** * Sets the request events. * diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/Util/ValueExporter.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/Util/ValueExporter.php deleted file mode 100644 index f3aeb80cb227c4e6e35b09e3c6fef8d14b4506ba..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DataCollector/Util/ValueExporter.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\HttpKernel\DataCollector\Util; - -/** - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class ValueExporter -{ - /** - * Converts a PHP value to a string. - * - * @param mixed $value The PHP value - * - * @return string The string representation of the given value - */ - public function exportValue($value) - { - if (is_object($value)) { - return sprintf('Object(%s)', get_class($value)); - } - - if (is_array($value)) { - $a = array(); - foreach ($value as $k => $v) { - $a[] = sprintf('%s => %s', $k, $this->exportValue($v)); - } - - return sprintf("Array(%s)", implode(', ', $a)); - } - - if (is_resource($value)) { - return sprintf('Resource(%s)', get_resource_type($value)); - } - - if (null === $value) { - return 'null'; - } - - if (false === $value) { - return 'false'; - } - - if (true === $value) { - return 'true'; - } - - return (string) $value; - } -} diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php index c8905fe304a7f67c2b810a538dd979910ca26fbe..6bfd7a01dd38d8fd31b410a58279397863609969 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php @@ -13,8 +13,10 @@ use Symfony\Component\Stopwatch\Stopwatch; use Symfony\Component\HttpKernel\KernelEvents; -use Symfony\Component\HttpKernel\Profiler\Profiler; use Psr\Log\LoggerInterface; +use Symfony\Component\HttpKernel\Profiler\Profile; +use Symfony\Component\HttpKernel\Profiler\Profiler; +use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\EventDispatcher\Event; use Symfony\Component\EventDispatcher\EventDispatcherInterface; use Symfony\Component\EventDispatcher\EventSubscriberInterface; @@ -30,13 +32,13 @@ class TraceableEventDispatcher implements EventDispatcherInterface, TraceableEventDispatcherInterface { private $logger; - private $called = array(); + private $called; private $stopwatch; + private $profiler; private $dispatcher; - private $wrappedListeners = array(); - private $firstCalledEvent = array(); + private $wrappedListeners; + private $firstCalledEvent; private $id; - private $lastEventId = 0; /** * Constructor. @@ -50,21 +52,19 @@ public function __construct(EventDispatcherInterface $dispatcher, Stopwatch $sto $this->dispatcher = $dispatcher; $this->stopwatch = $stopwatch; $this->logger = $logger; + $this->called = array(); + $this->wrappedListeners = array(); + $this->firstCalledEvent = array(); } /** * Sets the profiler. * - * The traceable event dispatcher does not use the profiler anymore. - * The job is now done directly by the Profiler listener and the - * data collectors themselves. - * * @param Profiler|null $profiler A Profiler instance - * - * @deprecated Deprecated since version 2.4, to be removed in 3.0. */ public function setProfiler(Profiler $profiler = null) { + $this->profiler = $profiler; } /** @@ -124,7 +124,7 @@ public function dispatch($eventName, Event $event = null) $event = new Event(); } - $this->id = $eventId = ++$this->lastEventId; + $this->id = spl_object_hash($event); $this->preDispatch($eventName, $event); @@ -139,13 +139,11 @@ public function dispatch($eventName, Event $event = null) $this->dispatcher->dispatch($eventName, $event); // reset the id as another event might have been dispatched during the dispatching of this event - $this->id = $eventId; + $this->id = spl_object_hash($event); unset($this->firstCalledEvent[$eventName]); - if ($e->isStarted()) { - $e->stop(); - } + $e->stop(); $this->postDispatch($eventName, $event); @@ -259,7 +257,7 @@ public function preListenerCall($eventName, $listener) * @param object $listener The listener * @param string $eventName The event name * - * @return array Information about the listener + * @return array Informations about the listener */ private function getListenerInfo($listener, $eventName) { @@ -315,6 +313,57 @@ private function getListenerInfo($listener, $eventName) return $info; } + /** + * Updates the stopwatch data in the profile hierarchy. + * + * @param string $token Profile token + * @param Boolean $updateChildren Whether to update the children altogether + */ + private function updateProfiles($token, $updateChildren) + { + if (!$this->profiler || !$profile = $this->profiler->loadProfile($token)) { + return; + } + + $this->saveInfoInProfile($profile, $updateChildren); + } + + /** + * Update the profiles with the timing and events information and saves them. + * + * @param Profile $profile The root profile + * @param Boolean $updateChildren Whether to update the children altogether + */ + private function saveInfoInProfile(Profile $profile, $updateChildren) + { + try { + $collector = $profile->getCollector('memory'); + $collector->updateMemoryUsage(); + } catch (\InvalidArgumentException $e) { + } + + try { + $collector = $profile->getCollector('time'); + $collector->setEvents($this->stopwatch->getSectionEvents($profile->getToken())); + } catch (\InvalidArgumentException $e) { + } + + try { + $collector = $profile->getCollector('events'); + $collector->setCalledListeners($this->getCalledListeners()); + $collector->setNotCalledListeners($this->getNotCalledListeners()); + } catch (\InvalidArgumentException $e) { + } + + $this->profiler->saveProfile($profile); + + if ($updateChildren) { + foreach ($profile->getChildren() as $child) { + $this->saveInfoInProfile($child, true); + } + } + } + private function preDispatch($eventName, Event $event) { // wrap all listeners before they are called @@ -363,14 +412,23 @@ private function postDispatch($eventName, Event $event) case KernelEvents::RESPONSE: $token = $event->getResponse()->headers->get('X-Debug-Token'); $this->stopwatch->stopSection($token); + if (HttpKernelInterface::MASTER_REQUEST === $event->getRequestType()) { + // The profiles can only be updated once they have been created + // that is after the 'kernel.response' event of the main request + $this->updateProfiles($token, true); + } break; case KernelEvents::TERMINATE: + $token = $event->getResponse()->headers->get('X-Debug-Token'); // In the special case described in the `preDispatch` method above, the `$token` section // does not exist, then closing it throws an exception which must be caught. - $token = $event->getResponse()->headers->get('X-Debug-Token'); try { $this->stopwatch->stopSection($token); } catch (\LogicException $e) {} + // The children profiles have been updated by the previous 'kernel.response' + // event. Only the root profile need to be updated with the 'kernel.terminate' + // timing informations. + $this->updateProfiles($token, false); break; } @@ -389,11 +447,9 @@ private function wrapListener($eventName, $listener) return function (Event $event) use ($self, $eventName, $listener) { $e = $self->preListenerCall($eventName, $listener); - call_user_func($listener, $event, $eventName, $self); + call_user_func($listener, $event); - if ($e->isStarted()) { - $e->stop(); - } + $e->stop(); if ($event->isPropagationStopped()) { $self->logSkippedListeners($eventName, $event, $listener); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/AddClassesToCachePass.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/AddClassesToCachePass.php index b1f34158109ea62f7b0f2d642ff426f1940d590c..7e694eba7a0a1c857a3be316e3cc55b189f4acee 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/AddClassesToCachePass.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/AddClassesToCachePass.php @@ -13,6 +13,7 @@ use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; +use Symfony\Component\HttpKernel\DependencyInjection\Extension; use Symfony\Component\HttpKernel\Kernel; /** diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/ContainerAwareHttpKernel.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/ContainerAwareHttpKernel.php index 69e7937d18c1167922379984230d7d8525acc209..c9b8a211d429163a12c67f3411d44a94b16166aa 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/ContainerAwareHttpKernel.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/ContainerAwareHttpKernel.php @@ -12,7 +12,6 @@ namespace Symfony\Component\HttpKernel\DependencyInjection; use Symfony\Component\HttpFoundation\Request; -use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpKernel\HttpKernel; use Symfony\Component\HttpKernel\Controller\ControllerResolverInterface; @@ -36,11 +35,10 @@ class ContainerAwareHttpKernel extends HttpKernel * @param EventDispatcherInterface $dispatcher An EventDispatcherInterface instance * @param ContainerInterface $container A ContainerInterface instance * @param ControllerResolverInterface $controllerResolver A ControllerResolverInterface instance - * @param RequestStack $requestStack A stack for master/sub requests */ - public function __construct(EventDispatcherInterface $dispatcher, ContainerInterface $container, ControllerResolverInterface $controllerResolver, RequestStack $requestStack = null) + public function __construct(EventDispatcherInterface $dispatcher, ContainerInterface $container, ControllerResolverInterface $controllerResolver) { - parent::__construct($dispatcher, $controllerResolver, $requestStack); + parent::__construct($dispatcher, $controllerResolver); $this->container = $container; diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/RegisterListenersPass.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/RegisterListenersPass.php index e48c409d8d00da1852761daf36838185fc08c856..ee00fbb6656bc9fc3761f68c097a4f743cccc299 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/RegisterListenersPass.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/DependencyInjection/RegisterListenersPass.php @@ -50,27 +50,18 @@ public function __construct($dispatcherService = 'event_dispatcher', $listenerTa public function process(ContainerBuilder $container) { - if (!$container->hasDefinition($this->dispatcherService) && !$container->hasAlias($this->dispatcherService)) { + if (!$container->hasDefinition($this->dispatcherService)) { return; } - $definition = $container->findDefinition($this->dispatcherService); + $definition = $container->getDefinition($this->dispatcherService); foreach ($container->findTaggedServiceIds($this->listenerTag) as $id => $events) { - $def = $container->getDefinition($id); - if (!$def->isPublic()) { - throw new \InvalidArgumentException(sprintf('The service "%s" must be public as event listeners are lazy-loaded.', $id)); - } - - if ($def->isAbstract()) { - throw new \InvalidArgumentException(sprintf('The service "%s" must not be abstract as event listeners are lazy-loaded.', $id)); - } - foreach ($events as $event) { $priority = isset($event['priority']) ? $event['priority'] : 0; if (!isset($event['event'])) { - throw new \InvalidArgumentException(sprintf('Service "%s" must define the "event" attribute on "%s" tags.', $id, $this->listenerTag)); + throw new \InvalidArgumentException(sprintf('Service "%s" must define the "event" attribute on "kernel.event_listener" tags.', $id)); } if (!isset($event['method'])) { @@ -86,13 +77,8 @@ public function process(ContainerBuilder $container) } foreach ($container->findTaggedServiceIds($this->subscriberTag) as $id => $attributes) { - $def = $container->getDefinition($id); - if (!$def->isPublic()) { - throw new \InvalidArgumentException(sprintf('The service "%s" must be public as event subscribers are lazy-loaded.', $id)); - } - // We must assume that the class value has been correctly filled, even if the service is created by a factory - $class = $def->getClass(); + $class = $container->getDefinition($id)->getClass(); $refClass = new \ReflectionClass($class); $interface = 'Symfony\Component\EventDispatcher\EventSubscriberInterface'; diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/FinishRequestEvent.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/FinishRequestEvent.php deleted file mode 100644 index ee724843cd843b6adbdcc16d87482f97a7304944..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/FinishRequestEvent.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@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\Event; - -/** - * Triggered whenever a request is fully processed. - * - * @author Benjamin Eberlei <kontakt@beberlei.de> - */ -class FinishRequestEvent extends KernelEvent -{ -} diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/GetResponseForControllerResultEvent.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/GetResponseForControllerResultEvent.php index fcb38daaa8c72b530d3244625ae6297fa89cf3ab..1bc0f98fd0a1670422f6c9ba3dbc0a93de23082c 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/GetResponseForControllerResultEvent.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/GetResponseForControllerResultEvent.php @@ -56,7 +56,7 @@ public function getControllerResult() /** * Assigns the return value of the controller. * - * @param mixed $controllerResult The controller return value + * @param mixed The controller return value * * @api */ diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/KernelEvent.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/KernelEvent.php index 98763253daddcebcf1c72cd002478fb9a8189a36..e57eed4d16f24827cac1f2b5e9e01ca92f80f79f 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/KernelEvent.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Event/KernelEvent.php @@ -86,16 +86,4 @@ public function getRequestType() { return $this->requestType; } - - /** - * Checks if this is a master request. - * - * @return Boolean True if the request is a master request - * - * @api - */ - public function isMasterRequest() - { - return HttpKernelInterface::MASTER_REQUEST === $this->requestType; - } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/EsiListener.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/EsiListener.php index 686778afc4ad8de72fe911e895513c376d942fc8..b90562b5d386c661e64d264059b32cdd4bba9f82 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/EsiListener.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/EsiListener.php @@ -11,6 +11,7 @@ namespace Symfony\Component\HttpKernel\EventListener; +use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpKernel\Event\FilterResponseEvent; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\HttpKernel\HttpCache\Esi; @@ -42,7 +43,7 @@ public function __construct(Esi $esi = null) */ public function onKernelResponse(FilterResponseEvent $event) { - if (!$event->isMasterRequest() || null === $this->esi) { + if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType() || null === $this->esi) { return; } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ExceptionListener.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ExceptionListener.php index 33ce993b079c454880af6004eb0a72c1d68d20f4..55950b29edace05e2e366e03bc1e24d8d7fdab18 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ExceptionListener.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ExceptionListener.php @@ -12,7 +12,6 @@ namespace Symfony\Component\HttpKernel\EventListener; use Psr\Log\LoggerInterface; -use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpKernel\Log\DebugLoggerInterface; use Symfony\Component\HttpKernel\Event\GetResponseForExceptionEvent; use Symfony\Component\HttpKernel\KernelEvents; @@ -52,7 +51,18 @@ public function onKernelException(GetResponseForExceptionEvent $event) $this->logException($exception, sprintf('Uncaught PHP Exception %s: "%s" at %s line %s', get_class($exception), $exception->getMessage(), $exception->getFile(), $exception->getLine())); - $request = $this->duplicateRequest($exception, $request); + $attributes = array( + '_controller' => $this->controller, + 'exception' => FlattenException::create($exception), + 'logger' => $this->logger instanceof DebugLoggerInterface ? $this->logger : null, + // keep for BC -- as $format can be an argument of the controller callable + // see src/Symfony/Bundle/TwigBundle/Controller/ExceptionController.php + // @deprecated in 2.4, to be removed in 3.0 + 'format' => $request->getRequestFormat(), + ); + + $request = $request->duplicate(null, null, $attributes); + $request->setMethod('GET'); try { $response = $event->getKernel()->handle($request, HttpKernelInterface::SUB_REQUEST, true); @@ -99,29 +109,4 @@ protected function logException(\Exception $exception, $message, $original = tru error_log($message); } } - - /** - * Clones the request for the exception. - * - * @param \Exception $exception The thrown exception. - * @param Request $request The original request. - * - * @return Request $request The cloned request. - */ - protected function duplicateRequest(\Exception $exception, Request $request) - { - $attributes = array( - '_controller' => $this->controller, - 'exception' => FlattenException::create($exception), - 'logger' => $this->logger instanceof DebugLoggerInterface ? $this->logger : null, - // keep for BC -- as $format can be an argument of the controller callable - // see src/Symfony/Bundle/TwigBundle/Controller/ExceptionController.php - // @deprecated in 2.4, to be removed in 3.0 - 'format' => $request->getRequestFormat(), - ); - $request = $request->duplicate(null, null, $attributes); - $request->setMethod('GET'); - - return $request; - } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/LocaleListener.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/LocaleListener.php index bdcf4c7644a7604d046c1fc5be3d6d1d95609990..0b864c02f2bc42ceb003091e09e7f9fa22ad7485 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/LocaleListener.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/LocaleListener.php @@ -12,9 +12,7 @@ namespace Symfony\Component\HttpKernel\EventListener; use Symfony\Component\HttpKernel\Event\GetResponseEvent; -use Symfony\Component\HttpKernel\Event\FinishRequestEvent; use Symfony\Component\HttpKernel\KernelEvents; -use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Routing\RequestContextAwareInterface; use Symfony\Component\EventDispatcher\EventSubscriberInterface; @@ -22,90 +20,47 @@ /** * Initializes the locale based on the current request. * - * This listener works in 2 modes: - * - * * 2.3 compatibility mode where you must call setRequest whenever the Request changes. - * * 2.4+ mode where you must pass a RequestStack instance in the constructor. - * * @author Fabien Potencier <fabien@symfony.com> */ class LocaleListener implements EventSubscriberInterface { private $router; private $defaultLocale; - private $requestStack; - /** - * RequestStack will become required in 3.0. - */ - public function __construct($defaultLocale = 'en', RequestContextAwareInterface $router = null, RequestStack $requestStack = null) + public function __construct($defaultLocale = 'en', RequestContextAwareInterface $router = null) { $this->defaultLocale = $defaultLocale; - $this->requestStack = $requestStack; $this->router = $router; } - /** - * Sets the current Request. - * - * This method was used to synchronize the Request, but as the HttpKernel - * is doing that automatically now, you should never call it directly. - * It is kept public for BC with the 2.3 version. - * - * @param Request|null $request A Request instance - * - * @deprecated Deprecated since version 2.4, to be removed in 3.0. - */ public function setRequest(Request $request = null) { if (null === $request) { return; } - $this->setLocale($request); - $this->setRouterContext($request); - } - - public function onKernelRequest(GetResponseEvent $event) - { - $request = $event->getRequest(); - $request->setDefaultLocale($this->defaultLocale); - - $this->setLocale($request); - $this->setRouterContext($request); - } - - public function onKernelFinishRequest(FinishRequestEvent $event) - { - if (null === $this->requestStack) { - return; // removed when requestStack is required - } - - if (null !== $parentRequest = $this->requestStack->getParentRequest()) { - $this->setRouterContext($parentRequest); - } - } - - private function setLocale(Request $request) - { if ($locale = $request->attributes->get('_locale')) { $request->setLocale($locale); } - } - private function setRouterContext(Request $request) - { if (null !== $this->router) { $this->router->getContext()->setParameter('_locale', $request->getLocale()); } } + public function onKernelRequest(GetResponseEvent $event) + { + $request = $event->getRequest(); + $request->setDefaultLocale($this->defaultLocale); + + $this->setRequest($request); + } + public static function getSubscribedEvents() { return array( // must be registered after the Router to have access to the _locale KernelEvents::REQUEST => array(array('onKernelRequest', 16)), - KernelEvents::FINISH_REQUEST => array(array('onKernelFinishRequest', 0)), ); } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ProfilerListener.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ProfilerListener.php index 995c998b6ff1361cfbd4de1449db4516a25fe29c..5b2228ba1a58fc391ed7dfb2c1704713d3cc31fa 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ProfilerListener.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ProfilerListener.php @@ -11,14 +11,14 @@ namespace Symfony\Component\HttpKernel\EventListener; +use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpKernel\Event\GetResponseEvent; use Symfony\Component\HttpKernel\Event\GetResponseForExceptionEvent; use Symfony\Component\HttpKernel\Event\FilterResponseEvent; -use Symfony\Component\HttpKernel\Event\PostResponseEvent; use Symfony\Component\HttpKernel\KernelEvents; +use Symfony\Component\HttpKernel\Profiler\Profile; use Symfony\Component\HttpKernel\Profiler\Profiler; use Symfony\Component\HttpFoundation\RequestMatcherInterface; -use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\EventDispatcher\EventSubscriberInterface; /** @@ -33,10 +33,9 @@ class ProfilerListener implements EventSubscriberInterface protected $onlyException; protected $onlyMasterRequests; protected $exception; - protected $requests = array(); + protected $children; + protected $requests; protected $profiles; - protected $requestStack; - protected $parents; /** * Constructor. @@ -46,15 +45,14 @@ class ProfilerListener implements EventSubscriberInterface * @param Boolean $onlyException true if the profiler only collects data when an exception occurs, false otherwise * @param Boolean $onlyMasterRequests true if the profiler only collects data when the request is a master request, false otherwise */ - public function __construct(Profiler $profiler, RequestMatcherInterface $matcher = null, $onlyException = false, $onlyMasterRequests = false, RequestStack $requestStack = null) + public function __construct(Profiler $profiler, RequestMatcherInterface $matcher = null, $onlyException = false, $onlyMasterRequests = false) { $this->profiler = $profiler; $this->matcher = $matcher; $this->onlyException = (Boolean) $onlyException; $this->onlyMasterRequests = (Boolean) $onlyMasterRequests; - $this->profiles = new \SplObjectStorage(); - $this->parents = new \SplObjectStorage(); - $this->requestStack = $requestStack; + $this->children = new \SplObjectStorage(); + $this->profiles = array(); } /** @@ -64,21 +62,16 @@ public function __construct(Profiler $profiler, RequestMatcherInterface $matcher */ public function onKernelException(GetResponseForExceptionEvent $event) { - if ($this->onlyMasterRequests && !$event->isMasterRequest()) { + if ($this->onlyMasterRequests && HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) { return; } $this->exception = $event->getException(); } - /** - * @deprecated Deprecated since version 2.4, to be removed in 3.0. - */ public function onKernelRequest(GetResponseEvent $event) { - if (null === $this->requestStack) { - $this->requests[] = $event->getRequest(); - } + $this->requests[] = $event->getRequest(); } /** @@ -88,7 +81,7 @@ public function onKernelRequest(GetResponseEvent $event) */ public function onKernelResponse(FilterResponseEvent $event) { - $master = $event->isMasterRequest(); + $master = HttpKernelInterface::MASTER_REQUEST === $event->getRequestType(); if ($this->onlyMasterRequests && !$master) { return; } @@ -109,36 +102,40 @@ public function onKernelResponse(FilterResponseEvent $event) return; } - $this->profiles[$request] = $profile; + $this->profiles[] = $profile; - if (null !== $this->requestStack) { - $this->parents[$request] = $this->requestStack->getParentRequest(); - } elseif (!$master) { - // to be removed when requestStack is required - array_pop($this->requests); + if (null !== $exception) { + foreach ($this->profiles as $profile) { + $this->profiler->saveProfile($profile); + } - $this->parents[$request] = end($this->requests); + return; } - } - public function onKernelTerminate(PostResponseEvent $event) - { - // attach children to parents - foreach ($this->profiles as $request) { - // isset call should be removed when requestStack is required - if (isset($this->parents[$request]) && null !== $parentRequest = $this->parents[$request]) { - $this->profiles[$parentRequest]->addChild($this->profiles[$request]); + // keep the profile as the child of its parent + if (!$master) { + array_pop($this->requests); + + $parent = end($this->requests); + + // when simulating requests, we might not have the parent + if ($parent) { + $profiles = isset($this->children[$parent]) ? $this->children[$parent] : array(); + $profiles[] = $profile; + $this->children[$parent] = $profiles; } } - // save profiles - foreach ($this->profiles as $request) { - $this->profiler->saveProfile($this->profiles[$request]); + if (isset($this->children[$request])) { + foreach ($this->children[$request] as $child) { + $profile->addChild($child); + } + $this->children[$request] = array(); } - $this->profiles = new \SplObjectStorage(); - $this->parents = new \SplObjectStorage(); - $this->requests = array(); + if ($master) { + $this->saveProfiles($profile); + } } public static function getSubscribedEvents() @@ -149,7 +146,19 @@ public static function getSubscribedEvents() KernelEvents::REQUEST => array('onKernelRequest', 1024), KernelEvents::RESPONSE => array('onKernelResponse', -100), KernelEvents::EXCEPTION => 'onKernelException', - KernelEvents::TERMINATE => array('onKernelTerminate', -1024), ); } + + /** + * Saves the profile hierarchy. + * + * @param Profile $profile The root profile + */ + private function saveProfiles(Profile $profile) + { + $this->profiler->saveProfile($profile); + foreach ($profile->getChildren() as $profile) { + $this->saveProfiles($profile); + } + } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ResponseListener.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ResponseListener.php index eeb2b0fcb23552f10027a5cf287e112d9ec9f804..669980cf2b61613c136cea132ff9750937e55344 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ResponseListener.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/ResponseListener.php @@ -12,6 +12,7 @@ namespace Symfony\Component\HttpKernel\EventListener; use Symfony\Component\HttpKernel\Event\FilterResponseEvent; +use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\EventDispatcher\EventSubscriberInterface; @@ -36,7 +37,7 @@ public function __construct($charset) */ public function onKernelResponse(FilterResponseEvent $event) { - if (!$event->isMasterRequest()) { + if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) { return; } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/RouterListener.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/RouterListener.php index 27ac632b6faeea575dcf03ea15c6950d7f1af689..f68716c144f89e9ccb927f45730bf8759b2ef2e2 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/RouterListener.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/RouterListener.php @@ -13,11 +13,9 @@ use Psr\Log\LoggerInterface; use Symfony\Component\HttpKernel\Event\GetResponseEvent; -use Symfony\Component\HttpKernel\Event\FinishRequestEvent; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; -use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\Routing\Exception\MethodNotAllowedException; use Symfony\Component\Routing\Exception\ResourceNotFoundException; use Symfony\Component\Routing\Matcher\UrlMatcherInterface; @@ -30,11 +28,6 @@ /** * Initializes the context from the request and sets request attributes based on a matching route. * - * This listener works in 2 modes: - * - * * 2.3 compatibility mode where you must call setRequest whenever the Request changes. - * * 2.4+ mode where you must pass a RequestStack instance in the constructor. - * * @author Fabien Potencier <fabien@symfony.com> */ class RouterListener implements EventSubscriberInterface @@ -43,20 +36,17 @@ class RouterListener implements EventSubscriberInterface private $context; private $logger; private $request; - private $requestStack; /** * Constructor. * - * RequestStack will become required in 3.0. - * * @param UrlMatcherInterface|RequestMatcherInterface $matcher The Url or Request matcher * @param RequestContext|null $context The RequestContext (can be null when $matcher implements RequestContextAwareInterface) * @param LoggerInterface|null $logger The logger * * @throws \InvalidArgumentException */ - public function __construct($matcher, RequestContext $context = null, LoggerInterface $logger = null, RequestStack $requestStack = null) + public function __construct($matcher, RequestContext $context = null, LoggerInterface $logger = null) { if (!$matcher instanceof UrlMatcherInterface && !$matcher instanceof RequestMatcherInterface) { throw new \InvalidArgumentException('Matcher must either implement UrlMatcherInterface or RequestMatcherInterface.'); @@ -68,20 +58,18 @@ public function __construct($matcher, RequestContext $context = null, LoggerInte $this->matcher = $matcher; $this->context = $context ?: $matcher->getContext(); - $this->requestStack = $requestStack; $this->logger = $logger; } /** * Sets the current Request. * - * This method was used to synchronize the Request, but as the HttpKernel - * is doing that automatically now, you should never call it directly. - * It is kept public for BC with the 2.3 version. + * The application should call this method whenever the Request + * object changes (entering a Request scope for instance, but + * also when leaving a Request scope -- especially when they are + * nested). * * @param Request|null $request A Request instance - * - * @deprecated Deprecated since version 2.4, to be moved to a private function in 3.0. */ public function setRequest(Request $request = null) { @@ -91,15 +79,6 @@ public function setRequest(Request $request = null) $this->request = $request; } - public function onKernelFinishRequest(FinishRequestEvent $event) - { - if (null === $this->requestStack) { - return; // removed when requestStack is required - } - - $this->setRequest($this->requestStack->getParentRequest()); - } - public function onKernelRequest(GetResponseEvent $event) { $request = $event->getRequest(); @@ -107,10 +86,7 @@ public function onKernelRequest(GetResponseEvent $event) // initialize the context that is also used by the generator (assuming matcher and generator share the same context instance) // we call setRequest even if most of the time, it has already been done to keep compatibility // with frameworks which do not use the Symfony service container - // when we have a RequestStack, no need to do it - if (null !== $this->requestStack) { - $this->setRequest($request); - } + $this->setRequest($request); if ($request->attributes->has('_controller')) { // routing is already done @@ -137,13 +113,9 @@ public function onKernelRequest(GetResponseEvent $event) } catch (ResourceNotFoundException $e) { $message = sprintf('No route found for "%s %s"', $request->getMethod(), $request->getPathInfo()); - if ($referer = $request->headers->get('referer')) { - $message .= sprintf(' (from "%s")', $referer); - } - throw new NotFoundHttpException($message, $e); } catch (MethodNotAllowedException $e) { - $message = sprintf('No route found for "%s %s": Method Not Allowed (Allow: %s)', $request->getMethod(), $request->getPathInfo(), implode(', ', $e->getAllowedMethods())); + $message = sprintf('No route found for "%s %s": Method Not Allowed (Allow: %s)', $request->getMethod(), $request->getPathInfo(), strtoupper(implode(', ', $e->getAllowedMethods()))); throw new MethodNotAllowedHttpException($e->getAllowedMethods(), $message, $e); } @@ -163,7 +135,6 @@ public static function getSubscribedEvents() { return array( KernelEvents::REQUEST => array(array('onKernelRequest', 32)), - KernelEvents::FINISH_REQUEST => array(array('onKernelFinishRequest', 0)), ); } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/SessionListener.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/SessionListener.php deleted file mode 100644 index d1023b297c0fa3790c84b5e00f977d2a7bd9c06a..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/SessionListener.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\HttpKernel\EventListener; - -use Symfony\Component\HttpKernel\HttpKernelInterface; -use Symfony\Component\HttpKernel\Event\GetResponseEvent; -use Symfony\Component\HttpKernel\KernelEvents; -use Symfony\Component\EventDispatcher\EventSubscriberInterface; - -/** - * Sets the session in the request. - * - * @author Johannes M. Schmitt <schmittjoh@gmail.com> - */ -abstract class SessionListener implements EventSubscriberInterface -{ - public function onKernelRequest(GetResponseEvent $event) - { - if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) { - return; - } - - $request = $event->getRequest(); - $session = $this->getSession(); - if (null === $session || $request->hasSession()) { - return; - } - - $request->setSession($session); - } - - public static function getSubscribedEvents() - { - return array( - KernelEvents::REQUEST => array('onKernelRequest', 128), - ); - } - - /** - * Gets the session object. - * - * @return SessionInterface|null A SessionInterface instance of null if no session is available - */ - abstract protected function getSession(); -} diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/StreamedResponseListener.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/StreamedResponseListener.php index 571cd74e343d0d4b2885785b9f84d80e3ee1f22c..88505fac6e7a63a01e4cf1524731be7291681790 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/StreamedResponseListener.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/StreamedResponseListener.php @@ -13,6 +13,7 @@ use Symfony\Component\HttpFoundation\StreamedResponse; use Symfony\Component\HttpKernel\Event\FilterResponseEvent; +use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\EventDispatcher\EventSubscriberInterface; @@ -31,7 +32,7 @@ class StreamedResponseListener implements EventSubscriberInterface */ public function onKernelResponse(FilterResponseEvent $event) { - if (!$event->isMasterRequest()) { + if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) { return; } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/TestSessionListener.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/TestSessionListener.php deleted file mode 100644 index ee047a6accbdf475340ad4fd6d36f1992a081052..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/EventListener/TestSessionListener.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\HttpKernel\EventListener; - -use Symfony\Component\HttpFoundation\Cookie; -use Symfony\Component\HttpKernel\HttpKernelInterface; -use Symfony\Component\HttpKernel\KernelEvents; -use Symfony\Component\HttpKernel\Event\FilterResponseEvent; -use Symfony\Component\HttpKernel\Event\GetResponseEvent; -use Symfony\Component\EventDispatcher\EventSubscriberInterface; - -/** - * TestSessionListener. - * - * Saves session in test environment. - * - * @author Bulat Shakirzyanov <mallluhuct@gmail.com> - * @author Fabien Potencier <fabien@symfony.com> - */ -abstract class TestSessionListener implements EventSubscriberInterface -{ - public function onKernelRequest(GetResponseEvent $event) - { - if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) { - return; - } - - // bootstrap the session - $session = $this->getSession(); - if (!$session) { - return; - } - - $cookies = $event->getRequest()->cookies; - - if ($cookies->has($session->getName())) { - $session->setId($cookies->get($session->getName())); - } - } - - /** - * Checks if session was initialized and saves if current request is master - * Runs on 'kernel.response' in test environment - * - * @param FilterResponseEvent $event - */ - public function onKernelResponse(FilterResponseEvent $event) - { - if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) { - return; - } - - $session = $event->getRequest()->getSession(); - if ($session && $session->isStarted()) { - $session->save(); - $params = session_get_cookie_params(); - $event->getResponse()->headers->setCookie(new Cookie($session->getName(), $session->getId(), 0 === $params['lifetime'] ? 0 : time() + $params['lifetime'], $params['path'], $params['domain'], $params['secure'], $params['httponly'])); - } - } - - public static function getSubscribedEvents() - { - return array( - KernelEvents::REQUEST => array('onKernelRequest', 192), - KernelEvents::RESPONSE => array('onKernelResponse', -128), - ); - } - - /** - * Gets the session object. - * - * @return SessionInterface|null A SessionInterface instance of null if no session is available - */ - abstract protected function getSession(); -} diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/EsiFragmentRenderer.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/EsiFragmentRenderer.php index a491a85ade22ada35edcf36d2c86efbc4b0cebe5..68b1a87da65cac43747f0ee969086a775c8d1dde 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/EsiFragmentRenderer.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/EsiFragmentRenderer.php @@ -35,7 +35,7 @@ class EsiFragmentRenderer extends RoutableFragmentRenderer * @param Esi $esi An Esi instance * @param InlineFragmentRenderer $inlineStrategy The inline strategy to use when ESI is not supported */ - public function __construct(Esi $esi = null, InlineFragmentRenderer $inlineStrategy) + public function __construct(Esi $esi, InlineFragmentRenderer $inlineStrategy) { $this->esi = $esi; $this->inlineStrategy = $inlineStrategy; @@ -56,7 +56,7 @@ public function __construct(Esi $esi = null, InlineFragmentRenderer $inlineStrat */ public function render($uri, Request $request, array $options = array()) { - if (!$this->esi || !$this->esi->hasSurrogateEsiCapability($request)) { + if (!$this->esi->hasSurrogateEsiCapability($request)) { return $this->inlineStrategy->render($uri, $request, $options); } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/FragmentHandler.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/FragmentHandler.php index 0297304844397ea3d44dce68d1dcfd0dace1dc02..af9b9ba98b744e0ef9f0d724a05c9d3a80c3effb 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/FragmentHandler.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/FragmentHandler.php @@ -14,7 +14,6 @@ use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\StreamedResponse; -use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\HttpKernel\Controller\ControllerReference; /** @@ -23,11 +22,6 @@ * This class handles the rendering of resource fragments that are included into * a main resource. The handling of the rendering is managed by specialized renderers. * - * This listener works in 2 modes: - * - * * 2.3 compatibility mode where you must call setRequest whenever the Request changes. - * * 2.4+ mode where you must pass a RequestStack instance in the constructor. - * * @author Fabien Potencier <fabien@symfony.com> * * @see FragmentRendererInterface @@ -35,22 +29,18 @@ class FragmentHandler { private $debug; - private $renderers = array(); + private $renderers; private $request; - private $requestStack; /** * Constructor. * - * RequestStack will become required in 3.0. - * - * @param FragmentRendererInterface[] $renderers An array of FragmentRendererInterface instances - * @param Boolean $debug Whether the debug mode is enabled or not - * @param RequestStack|null $requestStack The Request stack that controls the lifecycle of requests + * @param FragmentRendererInterface[] $renderers An array of FragmentRendererInterface instances + * @param Boolean $debug Whether the debug mode is enabled or not */ - public function __construct(array $renderers = array(), $debug = false, RequestStack $requestStack = null) + public function __construct(array $renderers = array(), $debug = false) { - $this->requestStack = $requestStack; + $this->renderers = array(); foreach ($renderers as $renderer) { $this->addRenderer($renderer); } @@ -70,13 +60,7 @@ public function addRenderer(FragmentRendererInterface $renderer) /** * Sets the current Request. * - * This method was used to synchronize the Request, but as the HttpKernel - * is doing that automatically now, you should never call it directly. - * It is kept public for BC with the 2.3 version. - * - * @param Request|null $request A Request instance - * - * @deprecated Deprecated since version 2.4, to be removed in 3.0. + * @param Request $request The current Request */ public function setRequest(Request $request = null) { @@ -97,7 +81,7 @@ public function setRequest(Request $request = null) * @return string|null The Response content or null when the Response is streamed * * @throws \InvalidArgumentException when the renderer does not exist - * @throws \LogicException when the Request is not successful + * @throws \RuntimeException when the Response is not successful */ public function render($uri, $renderer = 'inline', array $options = array()) { @@ -109,11 +93,11 @@ public function render($uri, $renderer = 'inline', array $options = array()) throw new \InvalidArgumentException(sprintf('The "%s" renderer does not exist.', $renderer)); } - if (!$request = $this->getRequest()) { - throw new \LogicException('Rendering a fragment can only be done when handling a Request.'); + if (null === $this->request) { + throw new \LogicException('Rendering a fragment can only be done when handling a master Request.'); } - return $this->deliver($this->renderers[$renderer]->render($uri, $request, $options)); + return $this->deliver($this->renderers[$renderer]->render($uri, $this->request, $options)); } /** @@ -131,7 +115,7 @@ public function render($uri, $renderer = 'inline', array $options = array()) protected function deliver(Response $response) { if (!$response->isSuccessful()) { - throw new \RuntimeException(sprintf('Error when rendering "%s" (Status code is %s).', $this->getRequest()->getUri(), $response->getStatusCode())); + throw new \RuntimeException(sprintf('Error when rendering "%s" (Status code is %s).', $this->request->getUri(), $response->getStatusCode())); } if (!$response instanceof StreamedResponse) { @@ -140,9 +124,4 @@ protected function deliver(Response $response) $response->sendContent(); } - - private function getRequest() - { - return $this->requestStack ? $this->requestStack->getCurrentRequest() : $this->request; - } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/FragmentRendererInterface.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/FragmentRendererInterface.php index ae172df80da3c380895f15bc2b24473a88dd2f5a..a758d2c582004b6bfebaaea3fe843c43374dcb26 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/FragmentRendererInterface.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/FragmentRendererInterface.php @@ -13,7 +13,6 @@ use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpKernel\Controller\ControllerReference; -use Symfony\Component\HttpFoundation\Response; /** * Interface implemented by all rendering strategies. diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/HIncludeFragmentRenderer.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/HIncludeFragmentRenderer.php index 8fc45724e76b3d780d8b9daf31c84c0ddefb6639..882bc2b0f28a69a976edbf289941f1cc814d7751 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/HIncludeFragmentRenderer.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/HIncludeFragmentRenderer.php @@ -91,8 +91,7 @@ public function render($uri, Request $request, array $options = array()) throw new \LogicException('You must use a proper URI when using the Hinclude rendering strategy or set a URL signer.'); } - // we need to sign the absolute URI, but want to return the path only. - $uri = substr($this->signer->sign($this->generateFragmentUri($uri, $request, true)), strlen($request->getSchemeAndHttpHost())); + $uri = $this->signer->sign($this->generateFragmentUri($uri, $request)); } // We need to replace ampersands in the URI with the encoded form in order to return valid html/xml content. diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/InlineFragmentRenderer.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/InlineFragmentRenderer.php index c6ca3d475e8828ba92ab621c88223e8f73dbd6c1..a3f37c359ae7c768018fa2bfaa9f014d545fb78f 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/InlineFragmentRenderer.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/InlineFragmentRenderer.php @@ -32,8 +32,7 @@ class InlineFragmentRenderer extends RoutableFragmentRenderer /** * Constructor. * - * @param HttpKernelInterface $kernel A HttpKernelInterface instance - * @param EventDispatcherInterface $dispatcher A EventDispatcherInterface instance + * @param HttpKernelInterface $kernel A HttpKernelInterface instance */ public function __construct(HttpKernelInterface $kernel, EventDispatcherInterface $dispatcher = null) { @@ -61,15 +60,14 @@ public function render($uri, Request $request, array $options = array()) $attributes = $reference->attributes; $reference->attributes = array(); - // The request format and locale might have been overridden by the user + // The request format and locale might have been overriden by the user foreach (array('_format', '_locale') as $key) { if (isset($attributes[$key])) { $reference->attributes[$key] = $attributes[$key]; } } - $uri = $this->generateFragmentUri($uri, $request, false, false); - + $uri = $this->generateFragmentUri($uri, $request); $reference->attributes = array_merge($attributes, $reference->attributes); } @@ -132,7 +130,7 @@ protected function createSubRequest($uri, Request $request) $server['REMOTE_ADDR'] = '127.0.0.1'; - $subRequest = Request::create($uri, 'get', array(), $cookies, array(), $server); + $subRequest = $request::create($uri, 'get', array(), $cookies, array(), $server); if ($request->headers->has('Surrogate-Capability')) { $subRequest->headers->set('Surrogate-Capability', $request->headers->get('Surrogate-Capability')); } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/RoutableFragmentRenderer.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/RoutableFragmentRenderer.php index bdf710b27a567c705ae9decf8ab7e3243d91a0d4..1f3b84f6190417431b196dd691dccc7f7e59d554 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/RoutableFragmentRenderer.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Fragment/RoutableFragmentRenderer.php @@ -40,18 +40,12 @@ public function setFragmentPath($path) * Generates a fragment URI for a given controller. * * @param ControllerReference $reference A ControllerReference instance - * @param Request $request A Request instance - * @param Boolean $absolute Whether to generate an absolute URL or not - * @param Boolean $strict Whether to allow non-scalar attributes or not + * @param Request $request A Request instance * * @return string A fragment URI */ - protected function generateFragmentUri(ControllerReference $reference, Request $request, $absolute = false, $strict = true) + protected function generateFragmentUri(ControllerReference $reference, Request $request) { - if ($strict) { - $this->checkNonScalar($reference->attributes); - } - // We need to forward the current _format and _locale values as we don't have // a proper routing pattern to do the job for us. // This makes things inconsistent if you switch from rendering a controller @@ -68,23 +62,6 @@ protected function generateFragmentUri(ControllerReference $reference, Request $ $reference->query['_path'] = http_build_query($reference->attributes, '', '&'); - $path = $this->fragmentPath.'?'.http_build_query($reference->query, '', '&'); - - if ($absolute) { - return $request->getUriForPath($path); - } - - return $request->getBaseUrl().$path; - } - - private function checkNonScalar($values) - { - foreach ($values as $key => $value) { - if (is_array($value)) { - $this->checkNonScalar($value); - } elseif (!is_scalar($value)) { - throw new \LogicException(sprintf('Controller attributes cannot contain non-scalar values (value for key "%s" is not a scalar).', $key)); - } - } + return $request->getUriForPath($this->fragmentPath.'?'.http_build_query($reference->query, '', '&')); } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpCache/HttpCache.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpCache/HttpCache.php index f80d6f03e73cec733e03e6ab9a2da50d2cd15376..63cde7e5b22253088a05799ea8823ad4ebd30cbd 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpCache/HttpCache.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpCache/HttpCache.php @@ -19,6 +19,7 @@ use Symfony\Component\HttpKernel\TerminableInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; +use Symfony\Component\HttpKernel\HttpCache\Esi; /** * Cache provides HTTP caching. @@ -34,8 +35,7 @@ class HttpCache implements HttpKernelInterface, TerminableInterface private $request; private $esi; private $esiCacheStrategy; - private $options = array(); - private $traces = array(); + private $traces; /** * Constructor. @@ -81,7 +81,6 @@ public function __construct(HttpKernelInterface $kernel, StoreInterface $store, { $this->store = $store; $this->kernel = $kernel; - $this->esi = $esi; // needed in case there is a fatal error because the backend is too slow to respond register_shutdown_function(array($this->store, 'cleanup')); @@ -95,6 +94,8 @@ public function __construct(HttpKernelInterface $kernel, StoreInterface $store, 'stale_while_revalidate' => 2, 'stale_if_error' => 60, ), $options); + $this->esi = $esi; + $this->traces = array(); } /** @@ -267,7 +268,7 @@ protected function invalidate(Request $request, $catch = false) // As per the RFC, invalidate Location and Content-Location URLs if present foreach (array('Location', 'Content-Location') as $header) { if ($uri = $response->headers->get($header)) { - $subRequest = Request::create($uri, 'get', array(), array(), array(), $request->server->all()); + $subRequest = $request::create($uri, 'get', array(), array(), array(), $request->server->all()); $this->store->invalidate($subRequest); } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpCache/Store.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpCache/Store.php index 1d55ab4118f2aefab2eb6d44d14b643c6c60932b..a1cda1fd27095b9dea7ffe7a9d54ab2bc37badc3 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpCache/Store.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpCache/Store.php @@ -50,9 +50,7 @@ public function cleanup() { // unlock everything foreach ($this->locks as $lock) { - if (file_exists($lock)) { - @unlink($lock); - } + @unlink($lock); } $error = error_get_last(); @@ -216,7 +214,7 @@ public function write(Request $request, Response $response) */ protected function generateContentDigest(Response $response) { - return 'en'.hash('sha256', $response->getContent()); + return 'en'.sha1($response->getContent()); } /** @@ -366,25 +364,6 @@ public function getPath($key) return $this->root.DIRECTORY_SEPARATOR.substr($key, 0, 2).DIRECTORY_SEPARATOR.substr($key, 2, 2).DIRECTORY_SEPARATOR.substr($key, 4, 2).DIRECTORY_SEPARATOR.substr($key, 6); } - /** - * Generates a cache key for the given Request. - * - * This method should return a key that must only depend on a - * normalized version of the request URI. - * - * If the same URI can have more than one representation, based on some - * headers, use a Vary header to indicate them, and each representation will - * be stored independently under the same cache key. - * - * @param Request $request A Request instance - * - * @return string A key for the given Request - */ - protected function generateCacheKey(Request $request) - { - return 'md'.hash('sha256', $request->getUri()); - } - /** * Returns a cache key for the given Request. * @@ -398,7 +377,7 @@ private function getCacheKey(Request $request) return $this->keyCache[$request]; } - return $this->keyCache[$request] = $this->generateCacheKey($request); + return $this->keyCache[$request] = 'md'.sha1($request->getUri()); } /** diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpKernel.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpKernel.php index 0be8e1b4dbb7c11e8e1d72fcc94d5fc218519ffc..837a16ff370e936dec4247f7f1b29937b2dd803f 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpKernel.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpKernel.php @@ -16,13 +16,11 @@ use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface; use Symfony\Component\HttpKernel\Event\FilterControllerEvent; use Symfony\Component\HttpKernel\Event\FilterResponseEvent; -use Symfony\Component\HttpKernel\Event\FinishRequestEvent; use Symfony\Component\HttpKernel\Event\GetResponseEvent; use Symfony\Component\HttpKernel\Event\GetResponseForControllerResultEvent; use Symfony\Component\HttpKernel\Event\GetResponseForExceptionEvent; use Symfony\Component\HttpKernel\Event\PostResponseEvent; use Symfony\Component\HttpFoundation\Request; -use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\EventDispatcher\EventDispatcherInterface; @@ -37,22 +35,19 @@ class HttpKernel implements HttpKernelInterface, TerminableInterface { protected $dispatcher; protected $resolver; - protected $requestStack; /** * Constructor * - * @param EventDispatcherInterface $dispatcher An EventDispatcherInterface instance - * @param ControllerResolverInterface $resolver A ControllerResolverInterface instance - * @param RequestStack $requestStack A stack for master/sub requests + * @param EventDispatcherInterface $dispatcher An EventDispatcherInterface instance + * @param ControllerResolverInterface $resolver A ControllerResolverInterface instance * * @api */ - public function __construct(EventDispatcherInterface $dispatcher, ControllerResolverInterface $resolver, RequestStack $requestStack = null) + public function __construct(EventDispatcherInterface $dispatcher, ControllerResolverInterface $resolver) { $this->dispatcher = $dispatcher; $this->resolver = $resolver; - $this->requestStack = $requestStack ?: new RequestStack(); } /** @@ -66,8 +61,6 @@ public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQ return $this->handleRaw($request, $type); } catch (\Exception $e) { if (false === $catch) { - $this->finishRequest($request, $type); - throw $e; } @@ -100,8 +93,6 @@ public function terminate(Request $request, Response $response) */ private function handleRaw(Request $request, $type = self::MASTER_REQUEST) { - $this->requestStack->push($request); - // request $event = new GetResponseEvent($this, $request, $type); $this->dispatcher->dispatch(KernelEvents::REQUEST, $event); @@ -165,27 +156,9 @@ private function filterResponse(Response $response, Request $request, $type) $this->dispatcher->dispatch(KernelEvents::RESPONSE, $event); - $this->finishRequest($request, $type); - return $event->getResponse(); } - /** - * Publishes the finish request event, then pop the request from the stack. - * - * Note that the order of the operations is important here, otherwise - * operations such as {@link RequestStack::getParentRequest()} can lead to - * weird results. - * - * @param Request $request - * @param int $type - */ - private function finishRequest(Request $request, $type) - { - $this->dispatcher->dispatch(KernelEvents::FINISH_REQUEST, new FinishRequestEvent($this, $request, $type)); - $this->requestStack->pop(); - } - /** * Handles an exception by trying to convert it to a Response. * @@ -206,8 +179,6 @@ private function handleException(\Exception $e, $request, $type) $e = $event->getException(); if (!$event->hasResponse()) { - $this->finishRequest($request, $type); - throw $e; } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Kernel.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Kernel.php index 94353c0422115f2b291fcfff4aeb0dd1ec8ad698..96a746ee8007325dbacec85556d338ac3dcde3c3 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Kernel.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Kernel.php @@ -24,6 +24,7 @@ use Symfony\Component\DependencyInjection\Loader\ClosureLoader; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; +use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpKernel\Bundle\BundleInterface; use Symfony\Component\HttpKernel\Config\FileLocator; use Symfony\Component\HttpKernel\DependencyInjection\MergeExtensionConfigurationPass; @@ -47,23 +48,24 @@ abstract class Kernel implements KernelInterface, TerminableInterface /** * @var BundleInterface[] */ - protected $bundles = array(); + protected $bundles; protected $bundleMap; protected $container; protected $rootDir; protected $environment; protected $debug; - protected $booted = false; + protected $booted; protected $name; protected $startTime; protected $loadClassCache; + protected $errorReportingLevel; - const VERSION = '2.4.1'; - const VERSION_ID = '20401'; + const VERSION = '2.3.4'; + const VERSION_ID = '20304'; const MAJOR_VERSION = '2'; - const MINOR_VERSION = '4'; - const RELEASE_VERSION = '1'; + const MINOR_VERSION = '3'; + const RELEASE_VERSION = '4'; const EXTRA_VERSION = ''; /** @@ -78,8 +80,10 @@ public function __construct($environment, $debug) { $this->environment = $environment; $this->debug = (Boolean) $debug; + $this->booted = false; $this->rootDir = $this->getRootDir(); $this->name = $this->getName(); + $this->bundles = array(); if ($this->debug) { $this->startTime = microtime(true); @@ -186,7 +190,7 @@ public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQ } /** - * Gets a HTTP kernel from the container + * Gets a http kernel from the container * * @return HttpKernel */ @@ -494,9 +498,7 @@ protected function initializeBundles() } // look for orphans - if (!empty($directChildren) && count($diff = array_diff_key($directChildren, $this->bundles))) { - $diff = array_keys($diff); - + if (count($diff = array_values(array_diff(array_keys($directChildren), array_keys($this->bundles))))) { throw new \LogicException(sprintf('Bundle "%s" extends bundle "%s", which is not registered.', $directChildren[$diff[0]], $diff[0])); } @@ -711,7 +713,7 @@ protected function dumpContainer(ConfigCache $cache, ContainerBuilder $container $content = $dumper->dump(array('class' => $class, 'base_class' => $baseClass)); if (!$this->debug) { - $content = static::stripComments($content); + $content = self::stripComments($content); } $cache->write($content, $container->getResources()); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/KernelEvents.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/KernelEvents.php index 5e6ebcb8d9926b324f2ab7f38b18f752632d32c4..fce48ac3a6ed8f244eaf41d9b3c159f6615e6e6f 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/KernelEvents.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/KernelEvents.php @@ -102,14 +102,4 @@ final class KernelEvents * @var string */ const TERMINATE = 'kernel.terminate'; - - /** - * The REQUEST_FINISHED event occurs when a response was generated for a request. - * - * This event allows you to reset the global and environmental state of - * the application, when it was changed during the request. - * - * @var string - */ - const FINISH_REQUEST = 'kernel.finish_request'; } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/KernelInterface.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/KernelInterface.php index 6905a1279c3cb43a7fbc32d679ed76877c59c556..dd37b60e03252026157131a665e035c3ae343e4a 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/KernelInterface.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/KernelInterface.php @@ -12,6 +12,7 @@ namespace Symfony\Component\HttpKernel; use Symfony\Component\DependencyInjection\ContainerInterface; +use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpKernel\Bundle\BundleInterface; use Symfony\Component\Config\Loader\LoaderInterface; diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/BaseMemcacheProfilerStorage.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/BaseMemcacheProfilerStorage.php index fd6bd96e2d853f25bac8879fe33796fad2ce4fb9..69ff9730540e73746b49060e8788eb1bbca2b94f 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/BaseMemcacheProfilerStorage.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/BaseMemcacheProfilerStorage.php @@ -89,7 +89,7 @@ public function find($ip, $url, $limit, $method, $start = null, $end = null) --$limit; } - usort($result, function ($a, $b) { + usort($result, function($a, $b) { if ($a['time'] === $b['time']) { return 0; } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/FileProfilerStorage.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/FileProfilerStorage.php index e225b0dd2eeb13eda8d684ac89932a1a3b8afd42..9265fc13f5c589d71861d8f4543c84d6b43bef8a 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/FileProfilerStorage.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/FileProfilerStorage.php @@ -70,7 +70,7 @@ public function find($ip, $url, $limit, $method, $start = null, $end = null) } if (!empty($start) && $csvTime < $start) { - continue; + continue; } if (!empty($end) && $csvTime > $end) { diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/MemcacheProfilerStorage.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/MemcacheProfilerStorage.php index 2034a19db1e6b7157410e571d37d8c9b177a38e1..a78cec0c8a3273b2149f2524e53c8de66f4b8bc3 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/MemcacheProfilerStorage.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/MemcacheProfilerStorage.php @@ -42,7 +42,7 @@ protected function getMemcache() $host = $matches[1] ?: $matches[2]; $port = $matches[3]; - $memcache = new Memcache(); + $memcache = new Memcache; $memcache->addServer($host, $port); $this->memcache = $memcache; diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/MemcachedProfilerStorage.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/MemcachedProfilerStorage.php index 31f313639085164a1cfd904e9db90cce137c3c7f..f7f68423589a4901e2005c45fa6692832616fbd6 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/MemcachedProfilerStorage.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/MemcachedProfilerStorage.php @@ -42,7 +42,7 @@ protected function getMemcached() $host = $matches[1] ?: $matches[2]; $port = $matches[3]; - $memcached = new Memcached(); + $memcached = new Memcached; //disable compression to allow appending $memcached->setOption(Memcached::OPT_COMPRESSION, false); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/Profiler.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/Profiler.php index b545b4acd510f00ae1db5473b9abb562ab2a8c12..49f3137e1525170f51f2f33937a83bd50d88c5c0 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/Profiler.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/Profiler.php @@ -13,8 +13,8 @@ use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; +use Symfony\Component\HttpKernel\Profiler\ProfilerStorageInterface; use Symfony\Component\HttpKernel\DataCollector\DataCollectorInterface; -use Symfony\Component\HttpKernel\DataCollector\LateDataCollectorInterface; use Psr\Log\LoggerInterface; /** @@ -109,13 +109,6 @@ public function loadProfile($token) */ public function saveProfile(Profile $profile) { - // late collect - foreach ($profile->getCollectors() as $collector) { - if ($collector instanceof LateDataCollectorInterface) { - $collector->lateCollect(); - } - } - if (!($ret = $this->storage->write($profile)) && null !== $this->logger) { $this->logger->warning('Unable to store the profiler information.'); } @@ -211,7 +204,7 @@ public function collect(Request $request, Response $response, \Exception $except return; } - $profile = new Profile(substr(hash('sha256', uniqid(mt_rand(), true)), 0, 6)); + $profile = new Profile(substr(sha1(uniqid(mt_rand(), true)), 0, 6)); $profile->setTime(time()); $profile->setUrl($request->getUri()); $profile->setIp($request->getClientIp()); @@ -222,8 +215,8 @@ public function collect(Request $request, Response $response, \Exception $except foreach ($this->collectors as $collector) { $collector->collect($request, $response, $exception); - // we need to clone for sub-requests - $profile->addCollector(clone $collector); + // forces collectors to become "read/only" (they loose their object dependencies) + $profile->addCollector(unserialize(serialize($collector))); } return $profile; diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/RedisProfilerStorage.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/RedisProfilerStorage.php index de2decfbf59edde781f06f581a03469788a47b2a..d62d6c7996d0add01eb88c7a764079c1f98cf6b3 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/RedisProfilerStorage.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Profiler/RedisProfilerStorage.php @@ -11,6 +11,8 @@ namespace Symfony\Component\HttpKernel\Profiler; +use Redis; + /** * RedisProfilerStorage stores profiling information in Redis. * @@ -30,7 +32,7 @@ class RedisProfilerStorage implements ProfilerStorageInterface protected $lifetime; /** - * @var \Redis + * @var Redis */ private $redis; @@ -197,7 +199,7 @@ public function write(Profile $profile) /** * Internal convenience method that returns the instance of Redis. * - * @return \Redis + * @return Redis * * @throws \RuntimeException */ @@ -214,7 +216,7 @@ protected function getRedis() throw new \RuntimeException('RedisProfilerStorage requires that the redis extension is loaded.'); } - $redis = new \Redis; + $redis = new Redis; $redis->connect($data['host'], $data['port']); if (isset($data['path'])) { @@ -236,7 +238,7 @@ protected function getRedis() /** * Set instance of the Redis * - * @param \Redis $redis + * @param Redis $redis */ public function setRedis($redis) { diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/README.md b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/README.md index 7aa0656b3afb70c1c69b3266689bab236d9b0e60..e0f3c987c477fdcc0f30d5df25b52ee61814aae9 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/README.md +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/README.md @@ -85,5 +85,5 @@ Resources You can run the unit tests with the following command: $ cd path/to/Symfony/Component/HttpKernel/ - $ composer.phar install + $ composer.phar install --dev $ phpunit diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Bundle/BundleTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Bundle/BundleTest.php index a451b7aba021205a2de7764e125015c1c1b1d91e..8affb5f300bfbb315d426a02d790355a1f71ed61 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Bundle/BundleTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Bundle/BundleTest.php @@ -11,18 +11,28 @@ namespace Symfony\Component\HttpKernel\Tests\Bundle; -use Symfony\Bundle\FrameworkBundle\DependencyInjection\Compiler\AddConsoleCommandPass; -use Symfony\Component\DependencyInjection\ContainerBuilder; -use Symfony\Component\DependencyInjection\Definition; use Symfony\Component\HttpKernel\Bundle\Bundle; + +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; -use Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionPresentBundle\ExtensionPresentBundle; class BundleTest extends \PHPUnit_Framework_TestCase { public function testRegisterCommands() { + if (!class_exists('Symfony\Component\Console\Application')) { + $this->markTestSkipped('The "Console" component is not available'); + } + + if (!interface_exists('Symfony\Component\DependencyInjection\ContainerAwareInterface')) { + $this->markTestSkipped('The "DependencyInjection" component is not available'); + } + + if (!class_exists('Symfony\Component\Finder\Finder')) { + $this->markTestSkipped('The "Finder" component is not available'); + } + $cmd = new FooCommand(); $app = $this->getMock('Symfony\Component\Console\Application'); $app->expects($this->once())->method('add')->with($this->equalTo($cmd)); @@ -33,25 +43,6 @@ public function testRegisterCommands() $bundle2 = new ExtensionAbsentBundle(); $this->assertNull($bundle2->registerCommands($app)); - } - public function testRegisterCommandsIngoreCommandAsAService() - { - $container = new ContainerBuilder(); - $container->addCompilerPass(new AddConsoleCommandPass()); - $definition = new Definition('Symfony\Component\HttpKernel\Tests\Fixtures\ExtensionPresentBundle\Command\FooCommand'); - $definition->addTag('console.command'); - $container->setDefinition('my-command', $definition); - $container->compile(); - - $application = $this->getMock('Symfony\Component\Console\Application'); - // Never called, because it's the - // Symfony\Bundle\FrameworkBundle\Console\Application that register - // commands as a service - $application->expects($this->never())->method('add'); - - $bundle = new ExtensionPresentBundle(); - $bundle->setContainer($container); - $bundle->registerCommands($application); } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/ClientTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/ClientTest.php index c58c9588d5d491c646ccec7847aec6fff5504c86..755d7f614c97de2f7d5634a1d27c46453c8ca9f8 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/ClientTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/ClientTest.php @@ -22,6 +22,13 @@ class ClientTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\BrowserKit\Client')) { + $this->markTestSkipped('The "BrowserKit" component is not available'); + } + } + public function testDoRequest() { $client = new Client(new TestHttpKernel()); @@ -43,6 +50,14 @@ public function testDoRequest() public function testGetScript() { + if (!class_exists('Symfony\Component\Process\Process')) { + $this->markTestSkipped('The "Process" component is not available'); + } + + if (!class_exists('Symfony\Component\ClassLoader\ClassLoader')) { + $this->markTestSkipped('The "ClassLoader" component is not available'); + } + $client = new TestClient(new TestHttpKernel()); $client->insulate(); $client->request('GET', '/'); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Controller/ControllerResolverTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Controller/ControllerResolverTest.php index dd14186dd2676f095c098f83587dd50fa31892af..aa401f44d6f4c35169b9783106f79911d8c3ebc5 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Controller/ControllerResolverTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Controller/ControllerResolverTest.php @@ -9,14 +9,20 @@ * file that was distributed with this source code. */ -namespace Symfony\Component\HttpKernel\Tests\Controller; +namespace Symfony\Component\HttpKernel\Tests; use Symfony\Component\HttpKernel\Controller\ControllerResolver; -use Symfony\Component\HttpKernel\Tests\Logger; use Symfony\Component\HttpFoundation\Request; class ControllerResolverTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testGetController() { $logger = new Logger(); @@ -26,9 +32,9 @@ public function testGetController() $this->assertFalse($resolver->getController($request), '->getController() returns false when the request has no _controller attribute'); $this->assertEquals(array('Unable to look for the controller as the "_controller" parameter is missing'), $logger->getLogs('warning')); - $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest::testGetController'); + $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\ControllerResolverTest::testGetController'); $controller = $resolver->getController($request); - $this->assertInstanceOf('Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest', $controller[0], '->getController() returns a PHP callable'); + $this->assertInstanceOf('Symfony\Component\HttpKernel\Tests\ControllerResolverTest', $controller[0], '->getController() returns a PHP callable'); $request->attributes->set('_controller', $lambda = function () {}); $controller = $resolver->getController($request); @@ -38,21 +44,21 @@ public function testGetController() $controller = $resolver->getController($request); $this->assertSame($this, $controller); - $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest'); + $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\ControllerResolverTest'); $controller = $resolver->getController($request); - $this->assertInstanceOf('Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest', $controller); + $this->assertInstanceOf('Symfony\Component\HttpKernel\Tests\ControllerResolverTest', $controller); $request->attributes->set('_controller', array($this, 'controllerMethod1')); $controller = $resolver->getController($request); $this->assertSame(array($this, 'controllerMethod1'), $controller); - $request->attributes->set('_controller', array('Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest', 'controllerMethod4')); + $request->attributes->set('_controller', array('Symfony\Component\HttpKernel\Tests\ControllerResolverTest', 'controllerMethod4')); $controller = $resolver->getController($request); - $this->assertSame(array('Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest', 'controllerMethod4'), $controller); + $this->assertSame(array('Symfony\Component\HttpKernel\Tests\ControllerResolverTest', 'controllerMethod4'), $controller); - $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\Controller\some_controller_function'); + $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\some_controller_function'); $controller = $resolver->getController($request); - $this->assertSame('Symfony\Component\HttpKernel\Tests\Controller\some_controller_function', $controller); + $this->assertSame('Symfony\Component\HttpKernel\Tests\some_controller_function', $controller); $request->attributes->set('_controller', 'foo'); try { @@ -70,7 +76,7 @@ public function testGetController() $this->assertInstanceOf('\InvalidArgumentException', $e, '->getController() throws an \InvalidArgumentException if the _controller attribute contains a non-existent class'); } - $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\Controller\ControllerResolverTest::bar'); + $request->attributes->set('_controller', 'Symfony\Component\HttpKernel\Tests\ControllerResolverTest::bar'); try { $resolver->getController($request); $this->fail('->getController() throws an \InvalidArgumentException if the _controller attribute contains a non-existent method'); @@ -120,7 +126,7 @@ public function testGetArguments() $request = Request::create('/'); $request->attributes->set('foo', 'foo'); $request->attributes->set('foobar', 'foobar'); - $controller = 'Symfony\Component\HttpKernel\Tests\Controller\some_controller_function'; + $controller = 'Symfony\Component\HttpKernel\Tests\some_controller_function'; $this->assertEquals(array('foo', 'foobar'), $resolver->getArguments($request, $controller)); $request = Request::create('/'); @@ -147,7 +153,7 @@ public function testGetArguments() 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')); + $mock->expects($this->once())->method('createController')->will($this->returnValue('Symfony\Component\HttpKernel\Tests\some_controller_function')); $request = Request::create('/'); $request->attributes->set('_controller', 'foobar'); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/ConfigDataCollectorTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/ConfigDataCollectorTest.php index 0c7396158631f810f6c593627ff4be97e4380783..192c8083e02725cdbcd869900b0c2e33518c93be 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/ConfigDataCollectorTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/ConfigDataCollectorTest.php @@ -19,6 +19,13 @@ class ConfigDataCollectorTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testCollect() { $kernel = new KernelForTest('test', true); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/ExceptionDataCollectorTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/ExceptionDataCollectorTest.php index ebea3ea6e1fc6fcaa503b247643d12a1e3b8b5b7..54a8aabe671b9e922c6c9c73a43caec6a494fce8 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/ExceptionDataCollectorTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/ExceptionDataCollectorTest.php @@ -18,6 +18,13 @@ class ExceptionDataCollectorTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testCollect() { $e = new \Exception('foo',500); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/LoggerDataCollectorTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/LoggerDataCollectorTest.php index 7cd4d06c7ad6016218098edb0249cb79dac9d344..ea82d9d3157339eb7df2078ec6b210ef813deb46 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/LoggerDataCollectorTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/LoggerDataCollectorTest.php @@ -13,9 +13,18 @@ use Symfony\Component\HttpKernel\DataCollector\LoggerDataCollector; use Symfony\Component\HttpKernel\Debug\ErrorHandler; +use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\HttpFoundation\Response; class LoggerDataCollectorTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + /** * @dataProvider getCollectTestData */ @@ -26,7 +35,7 @@ public function testCollect($nb, $logs, $expectedLogs, $expectedDeprecationCount $logger->expects($this->exactly(2))->method('getLogs')->will($this->returnValue($logs)); $c = new LoggerDataCollector($logger); - $c->lateCollect(); + $c->collect(new Request(), new Response()); $this->assertSame('logger', $c->getName()); $this->assertSame($nb, $c->countErrors()); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/MemoryDataCollectorTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/MemoryDataCollectorTest.php index 340b42881688293241a6b0c6af51293118863e64..607a580aefc9400d0f8715a78f624a60122d2a98 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/MemoryDataCollectorTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/MemoryDataCollectorTest.php @@ -17,6 +17,13 @@ class MemoryDataCollectorTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testCollect() { $collector = new MemoryDataCollector(); @@ -49,7 +56,6 @@ public function getBytesConversionTestData() 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/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/RequestDataCollectorTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/RequestDataCollectorTest.php index bb80781ebeb56a1f0325c22f547f8094976f5bfa..8c14604b28cd172f1ed322dc3a8d3db273dc4d06 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/RequestDataCollectorTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/RequestDataCollectorTest.php @@ -22,6 +22,13 @@ class RequestDataCollectorTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + /** * @dataProvider provider */ @@ -31,23 +38,21 @@ public function testCollect(Request $request, Response $response) $c->collect($request, $response); - $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', $c->getRequestAttributes()); - $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->assertInstanceOf('Symfony\Component\HttpFoundation\HeaderBag', $c->getResponseHeaders()); - $this->assertSame('OK', $c->getStatusText()); - $this->assertSame(200, $c->getStatusCode()); - $this->assertSame('application/json', $c->getContentType()); + $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',$c->getRequestAttributes()); + $this->assertInstanceOf('Symfony\Component\HttpFoundation\ParameterBag',$c->getRequestRequest()); + $this->assertInstanceOf('Symfony\Component\HttpFoundation\ParameterBag',$c->getRequestQuery()); + $this->assertEquals('html',$c->getFormat()); + $this->assertEquals(array(),$c->getSessionAttributes()); + $this->assertEquals('en',$c->getLocale()); + + $this->assertInstanceOf('Symfony\Component\HttpFoundation\HeaderBag',$c->getResponseHeaders()); + $this->assertEquals('OK',$c->getStatusText()); + $this->assertEquals(200,$c->getStatusCode()); + $this->assertEquals('application/json',$c->getContentType()); } /** @@ -75,7 +80,7 @@ public function testControllerInspection(Request $request, Response $response) array( 'Closure', - function () { return 'foo'; }, + function() { return 'foo'; }, array( 'class' => __NAMESPACE__.'\{closure}', 'method' => null, @@ -140,7 +145,7 @@ function () { return 'foo'; }, 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])); + $this->assertEquals($controllerTest[2], $c->getController(), sprintf('Testing: %s', $controllerTest[0])); } } @@ -152,8 +157,6 @@ public function provider() $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')); $response = new Response(); $response->setStatusCode(200); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/TimeDataCollectorTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/TimeDataCollectorTest.php index b5d64bffe350a1e68f8a350d2fb3650ac511984b..13abb6769694315b04a212077314c8b35a8a5707 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/TimeDataCollectorTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DataCollector/TimeDataCollectorTest.php @@ -17,9 +17,16 @@ class TimeDataCollectorTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testCollect() { - $c = new TimeDataCollector(); + $c = new TimeDataCollector; $request = new Request(); $request->server->set('REQUEST_TIME', 1); @@ -35,7 +42,7 @@ public function testCollect() $this->assertEquals(2000, $c->getStartTime()); $request = new Request(); - $c->collect($request, new Response()); + $c->collect($request, new Response); $this->assertEquals(0, $c->getStartTime()); $kernel = $this->getMock('Symfony\Component\HttpKernel\KernelInterface'); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Debug/TraceableEventDispatcherTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Debug/TraceableEventDispatcherTest.php index d30837d2c68555c83adb90d6bda9d8c79f37a9cb..a5f507cd4eeaa35cafdf644939ffdc27fa33f0fc 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Debug/TraceableEventDispatcherTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Debug/TraceableEventDispatcherTest.php @@ -22,6 +22,17 @@ class TraceableEventDispatcherTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } + + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testAddRemoveListener() { $dispatcher = new EventDispatcher(); @@ -148,22 +159,6 @@ public function testDispatchNested() $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 testStopwatchSections() { $dispatcher = new TraceableEventDispatcher(new EventDispatcher(), $stopwatch = new Stopwatch()); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php index 83182e63eae5bf55a4e75bb84028067a866024a1..61372cd3a0c8e87c38bef951030d79cdefa32f8d 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/ContainerAwareHttpKernelTest.php @@ -13,13 +13,27 @@ 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; class ContainerAwareHttpKernelTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\DependencyInjection\Container')) { + $this->markTestSkipped('The "DependencyInjection" component is not available'); + } + + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } + + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + /** * @dataProvider getProviderTypes */ @@ -27,49 +41,59 @@ 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) + $container + ->expects($this->once()) + ->method('enterScope') + ->with($this->equalTo('request')) + ; + $container + ->expects($this->once()) + ->method('leaveScope') + ->with($this->equalTo('request')) + ; + $container + ->expects($this->at(0)) + ->method('hasScope') + ->with($this->equalTo('request')) + ->will($this->returnValue(false)); + $container + ->expects($this->at(1)) + ->method('addScope') + ->with($this->isInstanceOf('Symfony\Component\DependencyInjection\Scope')); + // enterScope() + $container + ->expects($this->at(3)) + ->method('set') + ->with($this->equalTo('request'), $this->equalTo($request), $this->equalTo('request')) + ; + $container + ->expects($this->at(4)) + ->method('set') + ->with($this->equalTo('request'), $this->equalTo(null), $this->equalTo('request')) ; $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'); - } + $resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface'); + $kernel = new ContainerAwareHttpKernel($dispatcher, $container, $resolver); - /** - * @dataProvider getProviderTypes - */ - public function testVerifyRequestStackPushPopDuringHandle($type) - { - $request = new Request(); - $expected = new Response(); - $controller = function () use ($expected) { + $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'); + $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())); - $container = $this->getMock('Symfony\Component\DependencyInjection\ContainerInterface'); - $dispatcher = new EventDispatcher(); - $resolver = $this->getResolverMockFor($controller, $request); - $kernel = new ContainerAwareHttpKernel($dispatcher, $container, $resolver, $stack); + $actual = $kernel->handle($request, $type); - $kernel->handle($request, $type); + $this->assertSame($expected, $actual, '->handle() returns the response'); } /** @@ -79,23 +103,51 @@ 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) + $container + ->expects($this->once()) + ->method('enterScope') + ->with($this->equalTo('request')) + ; + $container + ->expects($this->once()) + ->method('leaveScope') + ->with($this->equalTo('request')) + ; + $container + ->expects($this->at(0)) + ->method('hasScope') + ->with($this->equalTo('request')) + ->will($this->returnValue(true)); + // enterScope() + $container + ->expects($this->at(2)) + ->method('set') + ->with($this->equalTo('request'), $this->equalTo($request), $this->equalTo('request')) + ; + $container + ->expects($this->at(3)) + ->method('set') + ->with($this->equalTo('request'), $this->equalTo(null), $this->equalTo('request')) ; $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); + $kernel = new ContainerAwareHttpKernel($dispatcher, $container, $resolver); + + $controller = function() use ($expected) { + throw $expected; + }; + + $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())); try { $kernel->handle($request, $type); @@ -114,52 +166,4 @@ public function getProviderTypes() 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/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php index 0df6a454b6602024d35f1e1d8fdbcc795845fd57..0800758b1d877fba051c1a489d1640a924a2a665 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/MergeExtensionConfigurationPassTest.php @@ -9,12 +9,23 @@ * file that was distributed with this source code. */ -namespace Symfony\Component\HttpKernel\Tests\DependencyInjection; +namespace Symfony\Component\HttpKernel\Tests; use Symfony\Component\HttpKernel\DependencyInjection\MergeExtensionConfigurationPass; class MergeExtensionConfigurationPassTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\DependencyInjection\Container')) { + $this->markTestSkipped('The "DependencyInjection" component is not available'); + } + + if (!class_exists('Symfony\Component\Config\FileLocator')) { + $this->markTestSkipped('The "Config" component is not available'); + } + } + public function testAutoloadMainExtension() { $container = $this->getMock('Symfony\\Component\\DependencyInjection\\ContainerBuilder'); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/RegisterListenersPassTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/RegisterListenersPassTest.php index b82053ece6f092163487ec087ce3db41c863cd02..d1e825a8241b25b59f5069f6fa37568b3bf526c0 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/RegisterListenersPassTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/DependencyInjection/RegisterListenersPassTest.php @@ -12,6 +12,7 @@ namespace Symfony\Component\HttpKernel\Tests\DependencyInjection; use Symfony\Component\DependencyInjection\ContainerBuilder; +use Symfony\Component\DependencyInjection\Definition; use Symfony\Component\HttpKernel\DependencyInjection\RegisterListenersPass; class RegisterListenersPassTest extends \PHPUnit_Framework_TestCase @@ -30,9 +31,6 @@ public function testEventSubscriberWithoutInterface() ); $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')); @@ -62,9 +60,6 @@ public function testValidEventSubscriber() ); $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\HttpKernel\Tests\DependencyInjection\SubscriberService')); @@ -83,55 +78,9 @@ public function testValidEventSubscriber() ->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); - } } class SubscriberService implements \Symfony\Component\EventDispatcher\EventSubscriberInterface diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/EsiListenerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/EsiListenerTest.php index 56f68535f1e2147e17d18b7a33f399150be6f510..2eddc572a46d18c6188d0c7980a2ca1414e0e48b 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/EsiListenerTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/EsiListenerTest.php @@ -22,6 +22,13 @@ class EsiListenerTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } + } + public function testFilterDoesNothingForSubRequests() { $dispatcher = new EventDispatcher(); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ExceptionListenerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ExceptionListenerTest.php index 30e8c74ecd294c96fc2bc982d9952448ba9a53d5..c6a01281a7d5cdb8db6cacea6f0cdf2d46c68f14 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ExceptionListenerTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ExceptionListenerTest.php @@ -26,6 +26,17 @@ */ class ExceptionListenerTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } + + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testConstruct() { $logger = new TestLogger(); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/FragmentListenerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/FragmentListenerTest.php index ec9360a431eb6b343add7258bb8646f90b2de0f7..153d8a44ff9cc4deacc82f73dafd6399f0d6d8fe 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/FragmentListenerTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/FragmentListenerTest.php @@ -19,6 +19,13 @@ class FragmentListenerTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } + } + public function testOnlyTriggeredOnFragmentRoute() { $request = Request::create('http://example.com/foo?_path=foo%3Dbar%26_controller%3Dfoo'); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/LocaleListenerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/LocaleListenerTest.php index d128753ffab067f128338d274c690d0b61bc237a..e5e4e3a286dfc2e33bc6fb43515bc3e05ea44536 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/LocaleListenerTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/LocaleListenerTest.php @@ -11,24 +11,23 @@ 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\HttpFoundation\Request; 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); + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } } public function testDefaultLocaleWithoutSession() { - $listener = new LocaleListener('fr', null, $this->requestStack); + $listener = new LocaleListener('fr'); $event = $this->getEvent($request = Request::create('/')); $listener->onKernelRequest($event); @@ -42,7 +41,7 @@ public function testLocaleFromRequestAttribute() $request->cookies->set('foo', 'value'); $request->attributes->set('_locale', 'es'); - $listener = new LocaleListener('fr', null, $this->requestStack); + $listener = new LocaleListener('fr'); $event = $this->getEvent($request); $listener->onKernelRequest($event); @@ -50,22 +49,6 @@ public function testLocaleFromRequestAttribute() } 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() { if (!class_exists('Symfony\Component\Routing\Router')) { $this->markTestSkipped('The "Routing" component is not available'); @@ -78,22 +61,18 @@ public function testRouterResetWithParentRequestOnKernelFinishRequest() $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); + $request = Request::create('/'); - $listener = new LocaleListener('fr', $router, $this->requestStack); - $listener->onKernelFinishRequest($event); + $request->attributes->set('_locale', 'es'); + $listener = new LocaleListener('fr', $router); + $listener->onKernelRequest($this->getEvent($request)); } public function testRequestLocaleIsNotOverridden() { $request = Request::create('/'); $request->setLocale('de'); - $listener = new LocaleListener('fr', null, $this->requestStack); + $listener = new LocaleListener('fr'); $event = $this->getEvent($request); $listener->onKernelRequest($event); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ProfilerListenerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ProfilerListenerTest.php deleted file mode 100644 index 772dfd0a4c11694ee482312d9d23f6fe88411e3d..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ProfilerListenerTest.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\HttpKernel\Tests\EventListener; - -use Symfony\Component\HttpKernel\Event\FilterResponseEvent; -use Symfony\Component\HttpKernel\Event\PostResponseEvent; -use Symfony\Component\HttpKernel\EventListener\ProfilerListener; -use Symfony\Component\HttpKernel\Event\GetResponseEvent; -use Symfony\Component\HttpKernel\Kernel; - -class ProfilerListenerTest extends \PHPUnit_Framework_TestCase -{ - /** - * Test to ensure BC without RequestStack - * - * @deprecated Deprecated since version 2.4, to be removed in 3.0. - */ - public function testEventsWithoutRequestStack() - { - $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)); - } -} diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ResponseListenerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ResponseListenerTest.php index 2698f8e7625ff06ec555406f007ea666ac2572bf..3f8e852104454e48f199783158d42d04590ebe38 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ResponseListenerTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/ResponseListenerTest.php @@ -27,6 +27,10 @@ class ResponseListenerTest extends \PHPUnit_Framework_TestCase protected function setUp() { + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } + $this->dispatcher = new EventDispatcher(); $listener = new ResponseListener('UTF-8'); $this->dispatcher->addListener(KernelEvents::RESPONSE, array($listener, 'onKernelResponse')); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/RouterListenerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/RouterListenerTest.php index ac742b35e08ce64e7ae5373627f40415daae1882..3ba56a8da78b86d23762c014d8d0194a024835a5 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/RouterListenerTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/RouterListenerTest.php @@ -11,20 +11,23 @@ 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\HttpFoundation\Request; use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpKernel\Event\GetResponseEvent; use Symfony\Component\Routing\RequestContext; class RouterListenerTest extends \PHPUnit_Framework_TestCase { - private $requestStack; - - public function setUp() + protected function setUp() { - $this->requestStack = $this->getMock('Symfony\Component\HttpFoundation\RequestStack', array(), array(), '', false); + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } + + if (!class_exists('Symfony\Component\Routing\Router')) { + $this->markTestSkipped('The "Routing" component is not available'); + } } /** @@ -42,7 +45,7 @@ public function testPort($defaultHttpPort, $defaultHttpsPort, $uri, $expectedHtt ->method('getContext') ->will($this->returnValue($context)); - $listener = new RouterListener($urlMatcher, null, null, $this->requestStack); + $listener = new RouterListener($urlMatcher); $event = $this->createGetResponseEventForUri($uri); $listener->onKernelRequest($event); @@ -80,7 +83,7 @@ private function createGetResponseEventForUri($uri) */ public function testInvalidMatcher() { - new RouterListener(new \stdClass(), null, null, $this->requestStack); + new RouterListener(new \stdClass()); } public function testRequestMatcher() @@ -95,7 +98,7 @@ public function testRequestMatcher() ->with($this->isInstanceOf('Symfony\Component\HttpFoundation\Request')) ->will($this->returnValue(array())); - $listener = new RouterListener($requestMatcher, new RequestContext(), null, $this->requestStack); + $listener = new RouterListener($requestMatcher, new RequestContext()); $listener->onKernelRequest($event); } @@ -116,7 +119,7 @@ public function testSubRequestWithDifferentMethod() ->method('getContext') ->will($this->returnValue($context)); - $listener = new RouterListener($requestMatcher, new RequestContext(), null, $this->requestStack); + $listener = new RouterListener($requestMatcher, new RequestContext()); $listener->onKernelRequest($event); // sub-request with another HTTP method diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/TestSessionListenerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/EventListener/TestSessionListenerTest.php deleted file mode 100644 index 907c20375fee65231a9d83a1c5df3758facbbc0d..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/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/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fixtures/KernelForTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fixtures/KernelForTest.php index 5fd61bbc7e7ce0713466f9d3d64f3b2a743119c5..e24daef2b353a0974edf7788c73efad52c4e7f95 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fixtures/KernelForTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fixtures/KernelForTest.php @@ -23,15 +23,32 @@ public function getBundleMap() public function registerBundles() { - return array(); + } + + public function init() + { + } + + public function registerBundleDirs() + { } public function registerContainerConfiguration(LoaderInterface $loader) { } + public function initializeBundles() + { + parent::initializeBundles(); + } + public function isBooted() { return $this->booted; } + + public function setIsBooted($value) + { + $this->booted = (Boolean) $value; + } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/EsiFragmentRendererTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/EsiFragmentRendererTest.php index 8acf45d96f6d715d4bc4cd0c5426b355daeb2d4f..5bbfdace9bde80643660c1cb2faf5a4c9080f615 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/EsiFragmentRendererTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/EsiFragmentRendererTest.php @@ -9,7 +9,7 @@ * file that was distributed with this source code. */ -namespace Symfony\Component\HttpKernel\Tests\Fragment; +namespace Symfony\Component\HttpKernel\Tests\Fragment\FragmentRenderer; use Symfony\Component\HttpKernel\Controller\ControllerReference; use Symfony\Component\HttpKernel\Fragment\EsiFragmentRenderer; @@ -18,6 +18,13 @@ class EsiFragmentRendererTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testRenderFallbackToInlineStrategyIfNoRequest() { $strategy = new EsiFragmentRenderer(new Esi(), $this->getInlineStrategy(true)); @@ -41,7 +48,7 @@ public function testRender() $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()); - $this->assertEquals('<esi:include src="/_fragment?_path=_format%3Dhtml%26_locale%3Dfr%26_controller%3Dmain_controller" alt="/_fragment?_path=_format%3Dhtml%26_locale%3Dfr%26_controller%3Dalt_controller" />', $strategy->render(new ControllerReference('main_controller', array(), array()), $request, array('alt' => new ControllerReference('alt_controller', array(), array())))->getContent()); + $this->assertEquals('<esi:include src="http://localhost/_fragment?_path=_format%3Dhtml%26_locale%3Dfr%26_controller%3Dmain_controller" alt="http://localhost/_fragment?_path=_format%3Dhtml%26_locale%3Dfr%26_controller%3Dalt_controller" />', $strategy->render(new ControllerReference('main_controller', array(), array()), $request, array('alt' => new ControllerReference('alt_controller', array(), array())))->getContent()); } private function getInlineStrategy($called = false) diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/FragmentHandlerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/FragmentHandlerTest.php index 1893d85b80ac09d62cde5738ecb622e82441ba29..cec8ae98403a711f4193490b509bf90eb9c822b8 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/FragmentHandlerTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/FragmentHandlerTest.php @@ -17,32 +17,17 @@ class FragmentHandlerTest extends \PHPUnit_Framework_TestCase { - private $requestStack; - - public 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 = new FragmentHandler(); $handler->render('/', 'foo'); } /** - * @expectedException \InvalidArgumentException + * @expectedException InvalidArgumentException */ public function testRenderWithUnknownRenderer() { @@ -52,7 +37,7 @@ public function testRenderWithUnknownRenderer() } /** - * @expectedException \RuntimeException + * @expectedException RuntimeException * @expectedExceptionMessage Error when rendering "http://localhost/" (Status code is 404). */ public function testDeliverWithUnsuccessfulResponse() @@ -87,8 +72,9 @@ protected function getHandler($returnValue, $arguments = array()) call_user_func_array(array($e, 'with'), $arguments); } - $handler = new FragmentHandler(array(), null, $this->requestStack); + $handler = new FragmentHandler(); $handler->addRenderer($renderer); + $handler->setRequest(Request::create('/')); return $handler; } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/HIncludeFragmentRendererTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/HIncludeFragmentRendererTest.php index 2f266dba77cd0c72f5a39ce131c66396055c3d20..20840f35e0e7783e372b97464acefaadd4488296 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/HIncludeFragmentRendererTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/HIncludeFragmentRendererTest.php @@ -9,7 +9,7 @@ * file that was distributed with this source code. */ -namespace Symfony\Component\HttpKernel\Tests\Fragment; +namespace Symfony\Component\HttpKernel\Fragment\Tests\FragmentRenderer; use Symfony\Component\HttpKernel\Controller\ControllerReference; use Symfony\Component\HttpKernel\Fragment\HIncludeFragmentRenderer; @@ -18,6 +18,13 @@ class HIncludeFragmentRendererTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + /** * @expectedException \LogicException */ @@ -31,7 +38,7 @@ 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&_hash=BP%2BOzCD5MRUI%2BHJpgPDOmoju00FnzLhP3TGcSHbbBLs%3D"></hx:include>', $strategy->render(new ControllerReference('main_controller', array(), array()), Request::create('/'))->getContent()); + $this->assertEquals('<hx:include src="http://localhost/_fragment?_path=_format%3Dhtml%26_locale%3Den%26_controller%3Dmain_controller&_hash=g4b3vtCnhkZBFKrciEFwG7fucVo%3D"></hx:include>', $strategy->render(new ControllerReference('main_controller', array(), array()), Request::create('/'))->getContent()); } public function testRenderWithUri() diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php index c7252c9cba558980f505f68f2efaad8b3b2dcb25..ffc0c0aab09caca62908df2775249baaa3deba78 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php @@ -9,7 +9,7 @@ * file that was distributed with this source code. */ -namespace Symfony\Component\HttpKernel\Tests\Fragment; +namespace Symfony\Component\HttpKernel\Fragment\Tests\FragmentRenderer; use Symfony\Component\HttpKernel\Controller\ControllerReference; use Symfony\Component\HttpKernel\HttpKernel; @@ -21,6 +21,17 @@ class InlineFragmentRendererTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } + + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testRender() { $strategy = new InlineFragmentRenderer($this->getKernel($this->returnValue(new Response('foo')))); @@ -56,24 +67,6 @@ public function testRenderWithObjectsAsAttributes() $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); @@ -90,7 +83,7 @@ public function testRenderWithTrustedHeaderDisabled() $strategy = new InlineFragmentRenderer($kernel); $strategy->render('/', Request::create('/')); - + Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, $trustedHeaderName); } @@ -204,13 +197,3 @@ public function testESIHeaderIsKeptInSubrequestWithTrustedHeaderDisabled() Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, $trustedHeaderName); } } - -class Bar -{ - public $bar = 'bar'; - - public function getBar() - { - return $this->bar; - } -} diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/RoutableFragmentRendererTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/RoutableFragmentRendererTest.php index 4af3601b410960acde262db60cef42744286770c..69385dccbd2f83c5f290af416df2a85d13aeb405 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/RoutableFragmentRendererTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Fragment/RoutableFragmentRendererTest.php @@ -9,10 +9,11 @@ * file that was distributed with this source code. */ -namespace Symfony\Component\HttpKernel\Tests\Fragment; +namespace Symfony\Component\HttpKernel\Fragment\Tests\FragmentRenderer; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpKernel\Controller\ControllerReference; +use Symfony\Component\HttpKernel\Fragment\RoutableFragmentRenderer; class RoutableFragmentRendererTest extends \PHPUnit_Framework_TestCase { @@ -21,26 +22,17 @@ class RoutableFragmentRendererTest extends \PHPUnit_Framework_TestCase */ 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)); + $this->assertEquals($uri, $this->getRenderer()->doGenerateFragmentUri($controller, Request::create('/'))); } 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())), + array('http://localhost/_fragment?_path=_format%3Dhtml%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array(), array())), + array('http://localhost/_fragment?_path=_format%3Dxml%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array('_format' => 'xml'), array())), + array('http://localhost/_fragment?_path=foo%3Dfoo%26_format%3Djson%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array('foo' => 'foo', '_format' => 'json'), array())), + array('http://localhost/_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('http://localhost/_fragment?foo=foo&_path=_format%3Dhtml%26_locale%3Den%26_controller%3Dcontroller', new ControllerReference('controller', array(), array('foo' => 'foo'))), ); } @@ -51,48 +43,22 @@ public function testGenerateFragmentUriWithARequest() $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())), - ); + $this->assertEquals('http://localhost/_fragment?_path=_format%3Djson%26_locale%3Dfr%26_controller%3Dcontroller', $this->getRenderer()->doGenerateFragmentUri($controller, $request)); } - private function callGenerateFragmentUriMethod(ControllerReference $reference, Request $request, $absolute = false) + private function getRenderer() { - $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); + return new Renderer(); } } -class Foo +class Renderer extends RoutableFragmentRenderer { - public $foo; - - public function getFoo() - { - return $this->foo; - } + public function render($uri, Request $request, array $options = array()) {} + public function getName() {} - public function doGenerateFragmentUri(ControllerReference $reference, Request $request, $absolute = false, $strict = true) + public function doGenerateFragmentUri(ControllerReference $reference, Request $request) { - return parent::generateFragmentUri($reference, $request, $absolute, $strict); + return parent::generateFragmentUri($reference, $request); } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/EsiTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/EsiTest.php index c50970638901ed2c20c8241504477faffb027b23..7180da1ff3b79ac9d186dc8b1fee33160efdda29 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/EsiTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/EsiTest.php @@ -17,6 +17,13 @@ class EsiTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testHasSurrogateEsiCapability() { $esi = new Esi(); @@ -126,7 +133,7 @@ public function testProcessEscapesPhpTags() } /** - * @expectedException \RuntimeException + * @expectedException RuntimeException */ public function testProcessWhenNoSrcInAnEsi() { @@ -166,7 +173,7 @@ public function testHandle() } /** - * @expectedException \RuntimeException + * @expectedException RuntimeException */ public function testHandleWhenResponseIsNot200() { diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/HttpCacheTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/HttpCacheTest.php index a2b38bd807c02bc58cbae21143dfc77a22ef4b79..a8064b832b7ff2fbda1c9162b6886bd65e47ce86 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/HttpCacheTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/HttpCacheTest.php @@ -19,8 +19,19 @@ class HttpCacheTest extends HttpCacheTestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testTerminateDelegatesTerminationOnlyForTerminableInterface() { + if (!class_exists('Symfony\Component\DependencyInjection\Container')) { + $this->markTestSkipped('The "DependencyInjection" component is not available'); + } + $storeMock = $this->getMockBuilder('Symfony\\Component\\HttpKernel\\HttpCache\\StoreInterface') ->disableOriginalConstructor() ->getMock(); @@ -623,7 +634,7 @@ public function testFetchesFullResponseWhenCacheStaleAndNoValidatorsPresent() $r = new \ReflectionObject($this->store); $m = $r->getMethod('save'); $m->setAccessible(true); - $m->invoke($this->store, 'md'.hash('sha256', 'http://localhost/'), serialize($tmp)); + $m->invoke($this->store, 'md'.sha1('http://localhost/'), serialize($tmp)); // build subsequent request; should be found but miss due to freshness $this->request('GET', '/'); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/HttpCacheTestCase.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/HttpCacheTestCase.php index 9a1c7d767fdaa2dbe25e94678023afb47a33a73c..4377f61fbeac529b0676ee27c4ffa7c5c1dad0db 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/HttpCacheTestCase.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/HttpCacheTestCase.php @@ -31,6 +31,10 @@ class HttpCacheTestCase extends \PHPUnit_Framework_TestCase protected function setUp() { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $this->kernel = null; $this->cache = null; diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/StoreTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/StoreTest.php index d8cf75ff7a9a879301c2bd19f592dcf6b739946c..6a3e5653a781cf0b6b79de965b630d28314bb271 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/StoreTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/StoreTest.php @@ -23,6 +23,10 @@ class StoreTest extends \PHPUnit_Framework_TestCase protected function setUp() { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $this->request = Request::create('/'); $this->response = new Response('hello world', 200, array()); @@ -89,7 +93,7 @@ public function testSetsTheXContentDigestResponseHeaderBeforeStoring() $entries = $this->getStoreMetadata($cacheKey); list ($req, $res) = $entries[0]; - $this->assertEquals('en9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08', $res['x-content-digest'][0]); + $this->assertEquals('ena94a8fe5ccb19ba61c4c0873d391e987982fbbd3', $res['x-content-digest'][0]); } public function testFindsAStoredEntryWithLookup() @@ -139,7 +143,7 @@ public function testRestoresResponseContentFromEntityStoreWithLookup() { $this->storeSimpleEntry(); $response = $this->store->lookup($this->request); - $this->assertEquals($this->getStorePath('en'.hash('sha256', 'test')), $response->getContent()); + $this->assertEquals($this->getStorePath('en'.sha1('test')), $response->getContent()); } public function testInvalidatesMetaAndEntityStoreEntriesWithInvalidate() @@ -182,9 +186,9 @@ public function testStoresMultipleResponsesForEachVaryCombination() $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->assertEquals($this->getStorePath('en'.sha1('test 3')), $this->store->lookup($req3)->getContent()); + $this->assertEquals($this->getStorePath('en'.sha1('test 2')), $this->store->lookup($req2)->getContent()); + $this->assertEquals($this->getStorePath('en'.sha1('test 1')), $this->store->lookup($req1)->getContent()); $this->assertCount(3, $this->getStoreMetadata($key)); } @@ -194,17 +198,17 @@ 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()); + $this->assertEquals($this->getStorePath('en'.sha1('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()); + $this->assertEquals($this->getStorePath('en'.sha1('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->assertEquals($this->getStorePath('en'.sha1('test 3')), $this->store->lookup($req3)->getContent()); $this->assertCount(2, $this->getStoreMetadata($key)); } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/TestHttpKernel.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/TestHttpKernel.php index da8c34c17768017ee50c6ddef830d8fb436ba8cd..cf23d7bf8abf7740f38c881bb94f97a8e8c6b442 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/TestHttpKernel.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/TestHttpKernel.php @@ -23,9 +23,9 @@ class TestHttpKernel extends HttpKernel implements ControllerResolverInterface protected $body; protected $status; protected $headers; - protected $called = false; + protected $called; protected $customizer; - protected $catch = false; + protected $catch; protected $backendRequest; public function __construct($body, $status, $headers, \Closure $customizer = null) @@ -34,6 +34,8 @@ public function __construct($body, $status, $headers, \Closure $customizer = nul $this->status = $status; $this->headers = $headers; $this->customizer = $customizer; + $this->called = false; + $this->catch = false; parent::__construct(new EventDispatcher(), $this); } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/TestMultipleHttpKernel.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/TestMultipleHttpKernel.php index 89ef406bbb15f4aed143851eb51b50ccf90caa13..6dd3d9e499d6165f604655eacb47585e8a6bb572 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/TestMultipleHttpKernel.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpCache/TestMultipleHttpKernel.php @@ -20,14 +20,20 @@ class TestMultipleHttpKernel extends HttpKernel implements ControllerResolverInterface { - protected $bodies = array(); - protected $statuses = array(); - protected $headers = array(); - protected $call = false; + protected $bodies; + protected $statuses; + protected $headers; + protected $catch; + protected $call; protected $backendRequest; public function __construct($responses) { + $this->bodies = array(); + $this->statuses = array(); + $this->headers = array(); + $this->call = false; + foreach ($responses as $response) { $this->bodies[] = $response['body']; $this->statuses[] = $response['status']; diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpKernelTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpKernelTest.php index 700b111228beea542d8a7e92542c6b77caa97fcd..367e3e2d41d699b7e97255c0d689178c4155a1c5 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpKernelTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/HttpKernelTest.php @@ -23,8 +23,19 @@ class HttpKernelTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\EventDispatcher\EventDispatcher')) { + $this->markTestSkipped('The "EventDispatcher" component is not available'); + } + + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + /** - * @expectedException \RuntimeException + * @expectedException RuntimeException */ public function testHandleWhenControllerThrowsAnExceptionAndRawIsTrue() { @@ -34,7 +45,7 @@ public function testHandleWhenControllerThrowsAnExceptionAndRawIsTrue() } /** - * @expectedException \RuntimeException + * @expectedException RuntimeException */ public function testHandleWhenControllerThrowsAnExceptionAndRawIsFalseAndNoListenerIsRegistered() { @@ -136,7 +147,7 @@ public function testHandleWhenNoControllerIsFound() } /** - * @expectedException \LogicException + * @expectedException LogicException */ public function testHandleWhenTheControllerIsNotACallable() { @@ -188,7 +199,7 @@ public function testHandleWhenTheControllerIsAStaticArray() } /** - * @expectedException \LogicException + * @expectedException LogicException */ public function testHandleWhenTheControllerDoesNotReturnAResponse() { @@ -238,24 +249,10 @@ public function testTerminate() $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'); }; + $controller = function() { return new Response('Hello'); }; } $resolver = $this->getMock('Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface'); diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/KernelTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/KernelTest.php index f4aba74c721d567894130316767960c369452b11..b36f9093f1b6efca30e7426a645e59b380329cbe 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/KernelTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/KernelTest.php @@ -12,6 +12,7 @@ namespace Symfony\Component\HttpKernel\Tests; use Symfony\Component\HttpKernel\Kernel; +use Symfony\Component\HttpKernel\Bundle\Bundle; use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; @@ -21,6 +22,13 @@ class KernelTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\DependencyInjection\Container')) { + $this->markTestSkipped('The "DependencyInjection" component is not available'); + } + } + public function testConstructor() { $env = 'test_env'; @@ -51,22 +59,33 @@ public function testClone() public function testBootInitializesBundlesAndContainer() { - $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles')) + ->getMock(); $kernel->expects($this->once()) ->method('initializeBundles'); $kernel->expects($this->once()) ->method('initializeContainer'); + $kernel->expects($this->once()) + ->method('getBundles') + ->will($this->returnValue(array())); $kernel->boot(); } public function testBootSetsTheContainerToTheBundles() { - $bundle = $this->getMock('Symfony\Component\HttpKernel\Bundle\Bundle'); + $bundle = $this->getMockBuilder('Symfony\Component\HttpKernel\Bundle\Bundle') + ->disableOriginalConstructor() + ->getMock(); $bundle->expects($this->once()) ->method('setContainer'); - $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer', 'getBundles')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles')) + ->getMock(); $kernel->expects($this->once()) ->method('getBundles') ->will($this->returnValue(array($bundle))); @@ -76,11 +95,13 @@ public function testBootSetsTheContainerToTheBundles() public function testBootSetsTheBootedFlagToTrue() { - // use test kernel to access isBooted() $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') - ->setConstructorArgs(array('test', false)) - ->setMethods(array('initializeBundles', 'initializeContainer')) + ->disableOriginalConstructor() + ->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles')) ->getMock(); + $kernel->expects($this->once()) + ->method('getBundles') + ->will($this->returnValue(array())); $kernel->boot(); @@ -89,8 +110,14 @@ public function testBootSetsTheBootedFlagToTrue() public function testClassCacheIsLoaded() { - $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer', 'doLoadClassCache')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles', 'doLoadClassCache')) + ->getMock(); $kernel->loadClassCache('name', '.extension'); + $kernel->expects($this->any()) + ->method('getBundles') + ->will($this->returnValue(array())); $kernel->expects($this->once()) ->method('doLoadClassCache') ->with('name', '.extension'); @@ -100,7 +127,13 @@ public function testClassCacheIsLoaded() public function testClassCacheIsNotLoadedByDefault() { - $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles', 'doLoadClassCache')) + ->getMock(); + $kernel->expects($this->any()) + ->method('getBundles') + ->will($this->returnValue(array())); $kernel->expects($this->never()) ->method('doLoadClassCache'); @@ -109,17 +142,27 @@ public function testClassCacheIsNotLoadedByDefault() public function testClassCacheIsNotLoadedWhenKernelIsNotBooted() { - $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer', 'doLoadClassCache')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles', 'doLoadClassCache')) + ->getMock(); $kernel->loadClassCache(); + $kernel->expects($this->any()) + ->method('getBundles') + ->will($this->returnValue(array())); $kernel->expects($this->never()) ->method('doLoadClassCache'); } public function testBootKernelSeveralTimesOnlyInitializesBundlesOnce() { - $kernel = $this->getKernel(array('initializeBundles', 'initializeContainer')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('initializeBundles', 'initializeContainer', 'getBundles')) + ->getMock(); $kernel->expects($this->once()) - ->method('initializeBundles'); + ->method('getBundles') + ->will($this->returnValue(array())); $kernel->boot(); $kernel->boot(); @@ -127,29 +170,40 @@ public function testBootKernelSeveralTimesOnlyInitializesBundlesOnce() public function testShutdownCallsShutdownOnAllBundles() { - $bundle = $this->getMock('Symfony\Component\HttpKernel\Bundle\Bundle'); + $bundle = $this->getMockBuilder('Symfony\Component\HttpKernel\Bundle\Bundle') + ->disableOriginalConstructor() + ->getMock(); $bundle->expects($this->once()) ->method('shutdown'); - $kernel = $this->getKernel(array(), array($bundle)); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('getBundles')) + ->getMock(); + $kernel->expects($this->once()) + ->method('getBundles') + ->will($this->returnValue(array($bundle))); - $kernel->boot(); $kernel->shutdown(); } public function testShutdownGivesNullContainerToAllBundles() { - $bundle = $this->getMock('Symfony\Component\HttpKernel\Bundle\Bundle'); - $bundle->expects($this->at(3)) + $bundle = $this->getMockBuilder('Symfony\Component\HttpKernel\Bundle\Bundle') + ->disableOriginalConstructor() + ->getMock(); + $bundle->expects($this->once()) ->method('setContainer') ->with(null); - $kernel = $this->getKernel(array('getBundles')); - $kernel->expects($this->any()) + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('getBundles')) + ->getMock(); + $kernel->expects($this->once()) ->method('getBundles') ->will($this->returnValue(array($bundle))); - $kernel->boot(); $kernel->shutdown(); } @@ -167,7 +221,11 @@ public function testHandleCallsHandleOnHttpKernel() ->method('handle') ->with($request, $type, $catch); - $kernel = $this->getKernel(array('getHttpKernel')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('getHttpKernel')) + ->getMock(); + $kernel->expects($this->once()) ->method('getHttpKernel') ->will($this->returnValue($httpKernelMock)); @@ -185,7 +243,11 @@ public function testHandleBootsTheKernel() ->disableOriginalConstructor() ->getMock(); - $kernel = $this->getKernel(array('getHttpKernel', 'boot')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('getHttpKernel', 'boot')) + ->getMock(); + $kernel->expects($this->once()) ->method('getHttpKernel') ->will($this->returnValue($httpKernelMock)); @@ -193,6 +255,10 @@ public function testHandleBootsTheKernel() $kernel->expects($this->once()) ->method('boot'); + // required as this value is initialized + // in the kernel constructor, which we don't call + $kernel->setIsBooted(false); + $kernel->handle($request, $type, $catch); } @@ -268,8 +334,8 @@ public function doStuff() $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. + // Heredocs are preserved, making the output mixing unix and windows line + // endings, switching to "\n" everywhere on windows to avoid failure. if (defined('PHP_WINDOWS_VERSION_MAJOR')) { $expected = str_replace("\r\n", "\n", $expected); $output = str_replace("\r\n", "\n", $output); @@ -303,7 +369,10 @@ protected function getKernelMockForIsClassInActiveBundleTest() { $bundle = new FooBarBundle(); - $kernel = $this->getKernel(array('getBundles')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('getBundles')) + ->getMock(); $kernel->expects($this->once()) ->method('getBundles') ->will($this->returnValue(array($bundle))); @@ -347,7 +416,7 @@ public function testSerialize() */ public function testLocateResourceThrowsExceptionWhenNameIsNotValid() { - $this->getKernel()->locateResource('Foo'); + $this->getKernelForInvalidLocateResource()->locateResource('Foo'); } /** @@ -355,7 +424,7 @@ public function testLocateResourceThrowsExceptionWhenNameIsNotValid() */ public function testLocateResourceThrowsExceptionWhenNameIsUnsafe() { - $this->getKernel()->locateResource('@FooBundle/../bar'); + $this->getKernelForInvalidLocateResource()->locateResource('@FooBundle/../bar'); } /** @@ -363,7 +432,7 @@ public function testLocateResourceThrowsExceptionWhenNameIsUnsafe() */ public function testLocateResourceThrowsExceptionWhenBundleDoesNotExist() { - $this->getKernel()->locateResource('@FooBundle/config/routing.xml'); + $this->getKernelForInvalidLocateResource()->locateResource('@FooBundle/config/routing.xml'); } /** @@ -371,7 +440,7 @@ public function testLocateResourceThrowsExceptionWhenBundleDoesNotExist() */ public function testLocateResourceThrowsExceptionWhenResourceDoesNotExist() { - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('getBundle') @@ -383,7 +452,7 @@ public function testLocateResourceThrowsExceptionWhenResourceDoesNotExist() public function testLocateResourceReturnsTheFirstThatMatches() { - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('getBundle') @@ -398,7 +467,7 @@ public function testLocateResourceReturnsTheFirstThatMatchesWithParent() $parent = $this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle'); $child = $this->getBundle(__DIR__.'/Fixtures/Bundle2Bundle'); - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->exactly(2)) ->method('getBundle') @@ -414,7 +483,7 @@ public function testLocateResourceReturnsAllMatches() $parent = $this->getBundle(__DIR__.'/Fixtures/Bundle1Bundle'); $child = $this->getBundle(__DIR__.'/Fixtures/Bundle2Bundle'); - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('getBundle') @@ -429,7 +498,7 @@ public function testLocateResourceReturnsAllMatches() public function testLocateResourceReturnsAllMatchesBis() { - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('getBundle') @@ -447,7 +516,7 @@ public function testLocateResourceReturnsAllMatchesBis() public function testLocateResourceIgnoresDirOnNonResource() { - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('getBundle') @@ -462,7 +531,7 @@ public function testLocateResourceIgnoresDirOnNonResource() public function testLocateResourceReturnsTheDirOneForResources() { - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('getBundle') @@ -477,7 +546,7 @@ public function testLocateResourceReturnsTheDirOneForResources() public function testLocateResourceReturnsTheDirOneForResourcesAndBundleOnes() { - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('getBundle') @@ -496,7 +565,7 @@ 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 = $this->getKernel(); $kernel ->expects($this->exactly(4)) ->method('getBundle') @@ -531,7 +600,7 @@ public function testLocateResourceOverrideBundleAndResourcesFolders() public function testLocateResourceOnDirectories() { - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->exactly(2)) ->method('getBundle') @@ -547,7 +616,7 @@ public function testLocateResourceOnDirectories() $kernel->locateResource('@FooBundle/Resources', __DIR__.'/Fixtures/Resources') ); - $kernel = $this->getKernel(array('getBundle')); + $kernel = $this->getKernel(); $kernel ->expects($this->exactly(2)) ->method('getBundle') @@ -569,19 +638,13 @@ 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 - ->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') - ->setMethods(array('registerBundles')) - ->setConstructorArgs(array('test', false)) - ->getMock() - ; + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('registerBundles') ->will($this->returnValue(array($parent, $child))) ; - $kernel->boot(); + $kernel->initializeBundles(); $map = $kernel->getBundleMap(); $this->assertEquals(array($child, $parent), $map['ParentABundle']); @@ -593,20 +656,14 @@ public function testInitializeBundlesSupportInheritanceCascade() $parent = $this->getBundle(null, 'GrandParentBBundle', 'ParentBBundle'); $child = $this->getBundle(null, 'ParentBBundle', 'ChildBBundle'); - // use test kernel so we can access getBundleMap() - $kernel = $this - ->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') - ->setMethods(array('registerBundles')) - ->setConstructorArgs(array('test', false)) - ->getMock() - ; + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('registerBundles') ->will($this->returnValue(array($grandparent, $parent, $child))) ; - $kernel->boot(); + $kernel->initializeBundles(); $map = $kernel->getBundleMap(); $this->assertEquals(array($child, $parent, $grandparent), $map['GrandParentBBundle']); @@ -616,45 +673,43 @@ public function testInitializeBundlesSupportInheritanceCascade() /** * @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(); + + $kernel = $this->getKernel(); + $kernel + ->expects($this->once()) + ->method('registerBundles') + ->will($this->returnValue(array($child))) + ; + $kernel->initializeBundles(); } public function testInitializeBundlesSupportsArbitraryBundleRegistrationOrder() { - $grandparent = $this->getBundle(null, null, 'GrandParentCBundle'); - $parent = $this->getBundle(null, 'GrandParentCBundle', 'ParentCBundle'); - $child = $this->getBundle(null, 'ParentCBundle', 'ChildCBundle'); + $grandparent = $this->getBundle(null, null, 'GrandParentCCundle'); + $parent = $this->getBundle(null, 'GrandParentCCundle', 'ParentCCundle'); + $child = $this->getBundle(null, 'ParentCCundle', 'ChildCCundle'); - // use test kernel so we can access getBundleMap() - $kernel = $this - ->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') - ->setMethods(array('registerBundles')) - ->setConstructorArgs(array('test', false)) - ->getMock() - ; + $kernel = $this->getKernel(); $kernel ->expects($this->once()) ->method('registerBundles') ->will($this->returnValue(array($parent, $grandparent, $child))) ; - $kernel->boot(); + $kernel->initializeBundles(); $map = $kernel->getBundleMap(); - $this->assertEquals(array($child, $parent, $grandparent), $map['GrandParentCBundle']); - $this->assertEquals(array($child, $parent), $map['ParentCBundle']); - $this->assertEquals(array($child), $map['ChildCBundle']); + $this->assertEquals(array($child, $parent, $grandparent), $map['GrandParentCCundle']); + $this->assertEquals(array($child, $parent), $map['ParentCCundle']); + $this->assertEquals(array($child), $map['ChildCCundle']); } /** * @expectedException \LogicException - * @expectedExceptionMessage Bundle "ParentCBundle" is directly extended by two bundles "ChildC2Bundle" and "ChildC1Bundle". */ public function testInitializeBundlesThrowsExceptionWhenABundleIsDirectlyExtendedByTwoBundles() { @@ -662,41 +717,59 @@ public function testInitializeBundlesThrowsExceptionWhenABundleIsDirectlyExtende $child1 = $this->getBundle(null, 'ParentCBundle', 'ChildC1Bundle'); $child2 = $this->getBundle(null, 'ParentCBundle', 'ChildC2Bundle'); - $kernel = $this->getKernel(array(), array($parent, $child1, $child2)); - $kernel->boot(); + $kernel = $this->getKernel(); + $kernel + ->expects($this->once()) + ->method('registerBundles') + ->will($this->returnValue(array($parent, $child1, $child2))) + ; + $kernel->initializeBundles(); } /** * @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(); + $kernel = $this->getKernel(); + $kernel + ->expects($this->once()) + ->method('registerBundles') + ->will($this->returnValue(array($fooBundle, $barBundle))) + ; + $kernel->initializeBundles(); } /** * @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(); + $kernel = $this->getKernel(); + $kernel + ->expects($this->once()) + ->method('registerBundles') + ->will($this->returnValue(array($circularRef))) + ; + $kernel->initializeBundles(); } public function testTerminateReturnsSilentlyIfKernelIsNotBooted() { - $kernel = $this->getKernel(array('getHttpKernel')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('getHttpKernel')) + ->getMock(); + $kernel->expects($this->never()) ->method('getHttpKernel'); + $kernel->setIsBooted(false); $kernel->terminate(Request::create('/'), new Response()); } @@ -711,12 +784,16 @@ public function testTerminateDelegatesTerminationOnlyForTerminableInterface() ->expects($this->never()) ->method('terminate'); - $kernel = $this->getKernel(array('getHttpKernel')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('getHttpKernel')) + ->getMock(); + $kernel->expects($this->once()) ->method('getHttpKernel') ->will($this->returnValue($httpKernelMock)); - $kernel->boot(); + $kernel->setIsBooted(true); $kernel->terminate(Request::create('/'), new Response()); // implements TerminableInterface @@ -729,20 +806,19 @@ public function testTerminateDelegatesTerminationOnlyForTerminableInterface() ->expects($this->once()) ->method('terminate'); - $kernel = $this->getKernel(array('getHttpKernel')); + $kernel = $this->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->disableOriginalConstructor() + ->setMethods(array('getHttpKernel')) + ->getMock(); + $kernel->expects($this->exactly(2)) ->method('getHttpKernel') ->will($this->returnValue($httpKernelMock)); - $kernel->boot(); + $kernel->setIsBooted(true); $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 @@ -778,28 +854,22 @@ protected function getBundle($dir = null, $parent = null, $className = null, $bu 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()) + protected function getKernel() { - $kernel = $this - ->getMockBuilder('Symfony\Component\HttpKernel\Kernel') - ->setMethods($methods) - ->setConstructorArgs(array('test', false)) - ->getMockForAbstractClass() + return $this + ->getMockBuilder('Symfony\Component\HttpKernel\Tests\Fixtures\KernelForTest') + ->setMethods(array('getBundle', 'registerBundles')) + ->disableOriginalConstructor() + ->getMock() ; + } - $kernel->expects($this->any()) - ->method('registerBundles') - ->will($this->returnValue($bundles)) + protected function getKernelForInvalidLocateResource() + { + return $this + ->getMockBuilder('Symfony\Component\HttpKernel\Kernel') + ->disableOriginalConstructor() + ->getMockForAbstractClass() ; - - return $kernel; } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/MemcacheMock.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/MemcacheMock.php index 9ff962c5b75e73dd4caeab4bd83e4d90b0e66468..014f5492fc8e96a6bd99bb9368fa12a74edc9c06 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/MemcacheMock.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/MemcacheMock.php @@ -18,8 +18,14 @@ */ class MemcacheMock { - private $connected = false; - private $storage = array(); + private $connected; + private $storage; + + public function __construct() + { + $this->connected = false; + $this->storage = array(); + } /** * Open memcached server connection diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/MemcachedMock.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/MemcachedMock.php index d28d54211d1116658c07f0db0a3a5d949968f3d0..2b17d70d2832e12ac4966b56ef7dfea7dacbaffc 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/MemcachedMock.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/MemcachedMock.php @@ -18,8 +18,14 @@ */ class MemcachedMock { - private $connected = false; - private $storage = array(); + private $connected; + private $storage; + + public function __construct() + { + $this->connected = false; + $this->storage = array(); + } /** * Set a Memcached option diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/RedisMock.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/RedisMock.php index 4a89e2db8872844487413d126f0e815d58af6b76..ca2980edde4664cd5077ba5d58452d281c37cbc9 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/RedisMock.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/Mock/RedisMock.php @@ -18,8 +18,15 @@ */ class RedisMock { - private $connected = false; - private $storage = array(); + + private $connected; + private $storage; + + public function __construct() + { + $this->connected = false; + $this->storage = array(); + } /** * Add a server to connection pool diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/ProfilerTest.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/ProfilerTest.php index ede7c3f14b0d7d4bd2f696d029a0e5b649811d7d..2a41531ecb1869549c2e3f981de6dfa7251679b0 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/ProfilerTest.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Tests/Profiler/ProfilerTest.php @@ -19,6 +19,13 @@ class ProfilerTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\HttpFoundation\Request')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + } + public function testCollect() { if (!class_exists('SQLite3') && (!class_exists('PDO') || !in_array('sqlite', \PDO::getAvailableDrivers()))) { diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/UriSigner.php b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/UriSigner.php index 7ede0c32f76e5a60737ac4abe4435f943c06b85a..665e99e2efb27ac25ad943a124bd394f49a98f96 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/UriSigner.php +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/UriSigner.php @@ -67,6 +67,6 @@ public function check($uri) private function computeHash($uri) { - return urlencode(base64_encode(hash_hmac('sha256', $uri, $this->secret, true))); + return urlencode(base64_encode(hash_hmac('sha1', $uri, $this->secret, true))); } } diff --git a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/composer.json b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/composer.json index a09b0013271c71eaff15efaeb940ef7fff767126..af659da9040924f3d34ea05fa8ad4d23832f39fb 100644 --- a/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/composer.json +++ b/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/composer.json @@ -18,7 +18,7 @@ "require": { "php": ">=5.3.3", "symfony/event-dispatcher": "~2.1", - "symfony/http-foundation": "~2.4", + "symfony/http-foundation": "~2.2", "symfony/debug": "~2.3", "psr/log": "~1.0" }, @@ -49,7 +49,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } } } diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/.gitattributes b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/.gitattributes deleted file mode 100644 index 80481513cff2c5c6cde0c1bff5655bcde5f34976..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/.gitattributes +++ /dev/null @@ -1,2 +0,0 @@ -/Tests export-ignore -phpunit.xml.dist export-ignore diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/CHANGELOG.md b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/CHANGELOG.md deleted file mode 100644 index 071ef3b5201b09b7b4e01e065935d3cea2bbdf9c..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/CHANGELOG.md +++ /dev/null @@ -1,14 +0,0 @@ -CHANGELOG -========= - -2.3.0 ------- - - * added PropertyAccessorBuilder, to enable or disable the support of "__call" - * added support for "__call" in the PropertyAccessor (disabled by default) - * [BC BREAK] changed PropertyAccessor to continue its search for a property or - method even if a non-public match was found. Before, a PropertyAccessDeniedException - was thrown in this case. Class PropertyAccessDeniedException was removed - now. - * deprecated PropertyAccess::getPropertyAccessor - * added PropertyAccess::createPropertyAccessor and PropertyAccess::createPropertyAccessorBuilder diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/AccessException.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/AccessException.php deleted file mode 100644 index b3a854646efce5d600db7b1cc5c65d38b31248ac..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/AccessException.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess\Exception; - -/** - * Thrown when a property path is not available. - * - * @author Stéphane Escandell <stephane.escandell@gmail.com> - */ -class AccessException extends RuntimeException -{ -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/ExceptionInterface.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/ExceptionInterface.php deleted file mode 100644 index d1fcdac94253c2f8fa45418798ce45ee3e0ac4ab..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/ExceptionInterface.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess\Exception; - -/** - * Marker interface for the PropertyAccess component. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -interface ExceptionInterface -{ -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/InvalidPropertyPathException.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/InvalidPropertyPathException.php deleted file mode 100644 index 69de31cee49763485f0438d400e57b74cafc55ab..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/InvalidPropertyPathException.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess\Exception; - -/** - * Thrown when a property path is malformed. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class InvalidPropertyPathException extends RuntimeException -{ -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/NoSuchIndexException.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/NoSuchIndexException.php deleted file mode 100644 index 597b9904a22a0c6dcb837a86de62526e411f2601..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/NoSuchIndexException.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess\Exception; - -/** - * Thrown when an index cannot be found. - * - * @author Stéphane Escandell <stephane.escandell@gmail.com> - */ -class NoSuchIndexException extends AccessException -{ -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/NoSuchPropertyException.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/NoSuchPropertyException.php deleted file mode 100644 index 1c7eda5f83839b3e7eb0860e5698ce21602d013a..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/NoSuchPropertyException.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess\Exception; - -/** - * Thrown when a property cannot be found. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class NoSuchPropertyException extends AccessException -{ -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/OutOfBoundsException.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/OutOfBoundsException.php deleted file mode 100644 index a3c45597dabc19cac8bf51616eca6b2e6c45f991..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/OutOfBoundsException.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess\Exception; - -/** - * Base OutOfBoundsException for the PropertyAccess component. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class OutOfBoundsException extends \OutOfBoundsException implements ExceptionInterface -{ -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/RuntimeException.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/RuntimeException.php deleted file mode 100644 index 9fe843e309d8c87765efff1b4297b2d000d3ac54..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/RuntimeException.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess\Exception; - -/** - * Base RuntimeException for the PropertyAccess component. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class RuntimeException extends \RuntimeException implements ExceptionInterface -{ -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/UnexpectedTypeException.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/UnexpectedTypeException.php deleted file mode 100644 index 029d48c22a9eb364a2b9f2c7a5e04c4abdfff0ac..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/Exception/UnexpectedTypeException.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\PropertyAccess\Exception; - -/** - * Thrown when a value does not match an expected type. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class UnexpectedTypeException extends RuntimeException -{ - public function __construct($value, $expectedType) - { - parent::__construct(sprintf('Expected argument of type "%s", "%s" given', $expectedType, is_object($value) ? get_class($value) : gettype($value))); - } -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/LICENSE b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/LICENSE deleted file mode 100644 index 88a57f8d8da49126c6f7d225d567ad216ace4d83..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (c) 2004-2013 Fabien Potencier - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is furnished -to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccess.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccess.php deleted file mode 100644 index 3b234df9d27536a6926b759b8d884ff775d41494..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccess.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\PropertyAccess; - -/** - * Entry point of the PropertyAccess component. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -final class PropertyAccess -{ - /** - * Creates a property accessor with the default configuration. - * - * @return PropertyAccessor The new property accessor - */ - public static function createPropertyAccessor() - { - return self::createPropertyAccessorBuilder()->getPropertyAccessor(); - } - - /** - * Creates a property accessor builder. - * - * @return PropertyAccessorBuilder The new property accessor builder - */ - public static function createPropertyAccessorBuilder() - { - return new PropertyAccessorBuilder(); - } - - /** - * Alias of {@link getPropertyAccessor}. - * - * @return PropertyAccessor The new property accessor - * - * @deprecated Deprecated since version 2.3, to be removed in 3.0. Use - * {@link createPropertyAccessor()} instead. - */ - public static function getPropertyAccessor() - { - return self::createPropertyAccessor(); - } - - /** - * This class cannot be instantiated. - */ - private function __construct() - { - } -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccessor.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccessor.php deleted file mode 100644 index d48891ef275d8e573e5f5b0ca7e117238abd71e7..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccessor.php +++ /dev/null @@ -1,457 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess; - -use Symfony\Component\PropertyAccess\Exception\NoSuchPropertyException; -use Symfony\Component\PropertyAccess\Exception\NoSuchIndexException; -use Symfony\Component\PropertyAccess\Exception\UnexpectedTypeException; - -/** - * Default implementation of {@link PropertyAccessorInterface}. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class PropertyAccessor implements PropertyAccessorInterface -{ - const VALUE = 0; - const IS_REF = 1; - - /** - * @var Boolean - */ - private $magicCall; - - /** - * @var Boolean - */ - private $throwExceptionOnInvalidIndex; - - /** - * Should not be used by application code. Use - * {@link PropertyAccess::createPropertyAccessor()} instead. - */ - public function __construct($magicCall = false, $throwExceptionOnInvalidIndex = false) - { - $this->magicCall = $magicCall; - $this->throwExceptionOnInvalidIndex = $throwExceptionOnInvalidIndex; - } - - /** - * {@inheritdoc} - */ - public function getValue($objectOrArray, $propertyPath) - { - if (is_string($propertyPath)) { - $propertyPath = new PropertyPath($propertyPath); - } elseif (!$propertyPath instanceof PropertyPathInterface) { - throw new UnexpectedTypeException($propertyPath, 'string or Symfony\Component\PropertyAccess\PropertyPathInterface'); - } - - $propertyValues =& $this->readPropertiesUntil($objectOrArray, $propertyPath, $propertyPath->getLength(), $this->throwExceptionOnInvalidIndex); - - return $propertyValues[count($propertyValues) - 1][self::VALUE]; - } - - /** - * {@inheritdoc} - */ - public function setValue(&$objectOrArray, $propertyPath, $value) - { - if (is_string($propertyPath)) { - $propertyPath = new PropertyPath($propertyPath); - } elseif (!$propertyPath instanceof PropertyPathInterface) { - throw new UnexpectedTypeException($propertyPath, 'string or Symfony\Component\PropertyAccess\PropertyPathInterface'); - } - - $propertyValues =& $this->readPropertiesUntil($objectOrArray, $propertyPath, $propertyPath->getLength() - 1); - $overwrite = true; - - // Add the root object to the list - array_unshift($propertyValues, array( - self::VALUE => &$objectOrArray, - self::IS_REF => true, - )); - - for ($i = count($propertyValues) - 1; $i >= 0; --$i) { - $objectOrArray =& $propertyValues[$i][self::VALUE]; - - if ($overwrite) { - if (!is_object($objectOrArray) && !is_array($objectOrArray)) { - throw new UnexpectedTypeException($objectOrArray, 'object or array'); - } - - $property = $propertyPath->getElement($i); - //$singular = $propertyPath->singulars[$i]; - $singular = null; - - if ($propertyPath->isIndex($i)) { - $this->writeIndex($objectOrArray, $property, $value); - } else { - $this->writeProperty($objectOrArray, $property, $singular, $value); - } - } - - $value =& $objectOrArray; - $overwrite = !$propertyValues[$i][self::IS_REF]; - } - } - - /** - * Reads the path from an object up to a given path index. - * - * @param object|array $objectOrArray The object or array to read from - * @param PropertyPathInterface $propertyPath The property path to read - * @param integer $lastIndex The index up to which should be read - * - * @return array The values read in the path. - * - * @throws UnexpectedTypeException If a value within the path is neither object nor array. - */ - private function &readPropertiesUntil(&$objectOrArray, PropertyPathInterface $propertyPath, $lastIndex, $throwExceptionOnNonexistantIndex = false) - { - $propertyValues = array(); - - for ($i = 0; $i < $lastIndex; ++$i) { - if (!is_object($objectOrArray) && !is_array($objectOrArray)) { - throw new UnexpectedTypeException($objectOrArray, 'object or array'); - } - - $property = $propertyPath->getElement($i); - $isIndex = $propertyPath->isIndex($i); - $isArrayAccess = is_array($objectOrArray) || $objectOrArray instanceof \ArrayAccess; - - // Create missing nested arrays on demand - if ($isIndex && $isArrayAccess && !isset($objectOrArray[$property])) { - if ($throwExceptionOnNonexistantIndex) { - throw new NoSuchIndexException(sprintf('Cannot read property "%s". Available properties are "%s"', $property, print_r(array_keys($objectOrArray), true))); - } - $objectOrArray[$property] = $i + 1 < $propertyPath->getLength() ? array() : null; - } - - if ($isIndex) { - $propertyValue =& $this->readIndex($objectOrArray, $property); - } else { - $propertyValue =& $this->readProperty($objectOrArray, $property); - } - - $objectOrArray =& $propertyValue[self::VALUE]; - - $propertyValues[] =& $propertyValue; - } - - return $propertyValues; - } - - /** - * Reads a key from an array-like structure. - * - * @param \ArrayAccess|array $array The array or \ArrayAccess object to read from - * @param string|integer $index The key to read - * - * @return mixed The value of the key - * - * @throws NoSuchPropertyException If the array does not implement \ArrayAccess or it is not an array - */ - private function &readIndex(&$array, $index) - { - if (!$array instanceof \ArrayAccess && !is_array($array)) { - throw new NoSuchPropertyException(sprintf('Index "%s" cannot be read from object of type "%s" because it doesn\'t implement \ArrayAccess', $index, get_class($array))); - } - - // Use an array instead of an object since performance is very crucial here - $result = array( - self::VALUE => null, - self::IS_REF => false - ); - - if (isset($array[$index])) { - if (is_array($array)) { - $result[self::VALUE] =& $array[$index]; - $result[self::IS_REF] = true; - } else { - $result[self::VALUE] = $array[$index]; - // Objects are always passed around by reference - $result[self::IS_REF] = is_object($array[$index]) ? true : false; - } - } - - return $result; - } - - /** - * Reads the a property from an object or array. - * - * @param object $object The object to read from. - * @param string $property The property to read. - * - * @return mixed The value of the read property - * - * @throws NoSuchPropertyException If the property does not exist or is not - * public. - */ - private function &readProperty(&$object, $property) - { - // Use an array instead of an object since performance is - // very crucial here - $result = array( - self::VALUE => null, - self::IS_REF => false - ); - - if (!is_object($object)) { - throw new NoSuchPropertyException(sprintf('Cannot read property "%s" from an array. Maybe you should write the property path as "[%s]" instead?', $property, $property)); - } - - $camelProp = $this->camelize($property); - $reflClass = new \ReflectionClass($object); - $getter = 'get'.$camelProp; - $isser = 'is'.$camelProp; - $hasser = 'has'.$camelProp; - $classHasProperty = $reflClass->hasProperty($property); - - if ($reflClass->hasMethod($getter) && $reflClass->getMethod($getter)->isPublic()) { - $result[self::VALUE] = $object->$getter(); - } elseif ($reflClass->hasMethod($isser) && $reflClass->getMethod($isser)->isPublic()) { - $result[self::VALUE] = $object->$isser(); - } elseif ($reflClass->hasMethod($hasser) && $reflClass->getMethod($hasser)->isPublic()) { - $result[self::VALUE] = $object->$hasser(); - } elseif ($reflClass->hasMethod('__get') && $reflClass->getMethod('__get')->isPublic()) { - $result[self::VALUE] = $object->$property; - } elseif ($classHasProperty && $reflClass->getProperty($property)->isPublic()) { - $result[self::VALUE] =& $object->$property; - $result[self::IS_REF] = true; - } elseif (!$classHasProperty && property_exists($object, $property)) { - // Needed to support \stdClass instances. We need to explicitly - // exclude $classHasProperty, otherwise if in the previous clause - // a *protected* property was found on the class, property_exists() - // returns true, consequently the following line will result in a - // fatal error. - $result[self::VALUE] =& $object->$property; - $result[self::IS_REF] = true; - } elseif ($this->magicCall && $reflClass->hasMethod('__call') && $reflClass->getMethod('__call')->isPublic()) { - // we call the getter and hope the __call do the job - $result[self::VALUE] = $object->$getter(); - } else { - $methods = array($getter, $isser, $hasser, '__get'); - if ($this->magicCall) { - $methods[] = '__call'; - } - - throw new NoSuchPropertyException(sprintf( - 'Neither the property "%s" nor one of the methods "%s()" '. - 'exist and have public access in class "%s".', - $property, - implode('()", "', $methods), - $reflClass->name - )); - } - - // Objects are always passed around by reference - if (is_object($result[self::VALUE])) { - $result[self::IS_REF] = true; - } - - return $result; - } - - /** - * Sets the value of the property at the given index in the path - * - * @param \ArrayAccess|array $array An array or \ArrayAccess object to write to - * @param string|integer $index The index to write at - * @param mixed $value The value to write - * - * @throws NoSuchPropertyException If the array does not implement \ArrayAccess or it is not an array - */ - private function writeIndex(&$array, $index, $value) - { - if (!$array instanceof \ArrayAccess && !is_array($array)) { - throw new NoSuchPropertyException(sprintf('Index "%s" cannot be modified in object of type "%s" because it doesn\'t implement \ArrayAccess', $index, get_class($array))); - } - - $array[$index] = $value; - } - - /** - * Sets the value of the property at the given index in the path - * - * @param object|array $object The object or array to write to - * @param string $property The property to write - * @param string|null $singular The singular form of the property name or null - * @param mixed $value The value to write - * - * @throws NoSuchPropertyException If the property does not exist or is not - * public. - */ - private function writeProperty(&$object, $property, $singular, $value) - { - $guessedAdders = ''; - - if (!is_object($object)) { - throw new NoSuchPropertyException(sprintf('Cannot write property "%s" to an array. Maybe you should write the property path as "[%s]" instead?', $property, $property)); - } - - $reflClass = new \ReflectionClass($object); - $plural = $this->camelize($property); - - // Any of the two methods is required, but not yet known - $singulars = null !== $singular ? array($singular) : (array) StringUtil::singularify($plural); - - if (is_array($value) || $value instanceof \Traversable) { - $methods = $this->findAdderAndRemover($reflClass, $singulars); - - if (null !== $methods) { - // At this point the add and remove methods have been found - // Use iterator_to_array() instead of clone in order to prevent side effects - // see https://github.com/symfony/symfony/issues/4670 - $itemsToAdd = is_object($value) ? iterator_to_array($value) : $value; - $itemToRemove = array(); - $propertyValue = $this->readProperty($object, $property); - $previousValue = $propertyValue[self::VALUE]; - - if (is_array($previousValue) || $previousValue instanceof \Traversable) { - foreach ($previousValue as $previousItem) { - foreach ($value as $key => $item) { - if ($item === $previousItem) { - // Item found, don't add - unset($itemsToAdd[$key]); - - // Next $previousItem - continue 2; - } - } - - // Item not found, add to remove list - $itemToRemove[] = $previousItem; - } - } - - foreach ($itemToRemove as $item) { - call_user_func(array($object, $methods[1]), $item); - } - - foreach ($itemsToAdd as $item) { - call_user_func(array($object, $methods[0]), $item); - } - - return; - } else { - // It is sufficient to include only the adders in the error - // message. If the user implements the adder but not the remover, - // an exception will be thrown in findAdderAndRemover() that - // the remover has to be implemented as well. - $guessedAdders = '"add'.implode('()", "add', $singulars).'()", '; - } - } - - $setter = 'set'.$this->camelize($property); - $classHasProperty = $reflClass->hasProperty($property); - - if ($reflClass->hasMethod($setter) && $reflClass->getMethod($setter)->isPublic()) { - $object->$setter($value); - } elseif ($reflClass->hasMethod('__set') && $reflClass->getMethod('__set')->isPublic()) { - $object->$property = $value; - } elseif ($classHasProperty && $reflClass->getProperty($property)->isPublic()) { - $object->$property = $value; - } elseif (!$classHasProperty && property_exists($object, $property)) { - // Needed to support \stdClass instances. We need to explicitly - // exclude $classHasProperty, otherwise if in the previous clause - // a *protected* property was found on the class, property_exists() - // returns true, consequently the following line will result in a - // fatal error. - $object->$property = $value; - } elseif ($this->magicCall && $reflClass->hasMethod('__call') && $reflClass->getMethod('__call')->isPublic()) { - // we call the getter and hope the __call do the job - $object->$setter($value); - } else { - throw new NoSuchPropertyException(sprintf( - 'Neither the property "%s" nor one of the methods %s"%s()", '. - '"__set()" or "__call()" exist and have public access in class "%s".', - $property, - $guessedAdders, - $setter, - $reflClass->name - )); - } - } - - /** - * Camelizes a given string. - * - * @param string $string Some string - * - * @return string The camelized version of the string - */ - private function camelize($string) - { - return preg_replace_callback('/(^|_|\.)+(.)/', function ($match) { return ('.' === $match[1] ? '_' : '').strtoupper($match[2]); }, $string); - } - - /** - * Searches for add and remove methods. - * - * @param \ReflectionClass $reflClass The reflection class for the given object - * @param array $singulars The singular form of the property name or null - * - * @return array|null An array containing the adder and remover when found, null otherwise - * - * @throws NoSuchPropertyException If the property does not exist - */ - private function findAdderAndRemover(\ReflectionClass $reflClass, array $singulars) - { - foreach ($singulars as $singular) { - $addMethod = 'add'.$singular; - $removeMethod = 'remove'.$singular; - - $addMethodFound = $this->isAccessible($reflClass, $addMethod, 1); - $removeMethodFound = $this->isAccessible($reflClass, $removeMethod, 1); - - if ($addMethodFound && $removeMethodFound) { - return array($addMethod, $removeMethod); - } - - if ($addMethodFound xor $removeMethodFound) { - throw new NoSuchPropertyException(sprintf( - 'Found the public method "%s()", but did not find a public "%s()" on class %s', - $addMethodFound ? $addMethod : $removeMethod, - $addMethodFound ? $removeMethod : $addMethod, - $reflClass->name - )); - } - } - - return null; - } - - /** - * Returns whether a method is public and has a specific number of required parameters. - * - * @param \ReflectionClass $class The class of the method - * @param string $methodName The method name - * @param integer $parameters The number of parameters - * - * @return Boolean Whether the method is public and has $parameters - * required parameters - */ - private function isAccessible(\ReflectionClass $class, $methodName, $parameters) - { - if ($class->hasMethod($methodName)) { - $method = $class->getMethod($methodName); - - if ($method->isPublic() && $method->getNumberOfRequiredParameters() === $parameters) { - return true; - } - } - - return false; - } -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccessorBuilder.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccessorBuilder.php deleted file mode 100644 index 50b872f3a35c73fda36afe3b8a3e0cf8acf6cdfc..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccessorBuilder.php +++ /dev/null @@ -1,104 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess; - -/** - * A configurable builder for PropertyAccessorInterface objects. - * - * @author Jérémie Augustin <jeremie.augustin@pixel-cookers.com> - */ -class PropertyAccessorBuilder -{ - /** - * @var Boolean - */ - private $magicCall = false; - - /** - * @var Boolean - */ - private $throwExceptionOnInvalidIndex = false; - - /** - * Enables the use of "__call" by the PropertyAccessor. - * - * @return PropertyAccessorBuilder The builder object - */ - public function enableMagicCall() - { - $this->magicCall = true; - - return $this; - } - - /** - * Disables the use of "__call" by the PropertyAccessor. - * - * @return PropertyAccessorBuilder The builder object - */ - public function disableMagicCall() - { - $this->magicCall = false; - - return $this; - } - - /** - * @return Boolean true if the use of "__call" by the PropertyAccessor is enabled - */ - public function isMagicCallEnabled() - { - return $this->magicCall; - } - - /** - * Enables exceptions in read context for array by PropertyAccessor - * - * @return PropertyAccessorBuilder The builder object - */ - public function enableExceptionOnInvalidIndex() - { - $this->throwExceptionOnInvalidIndex = true; - - return $this; - } - - /** - * Disables exceptions in read context for array by PropertyAccessor - * - * @return PropertyAccessorBuilder The builder object - */ - public function disableExceptionOnInvalidIndex() - { - $this->throwExceptionOnInvalidIndex = false; - - return $this; - } - - /** - * @return Boolean true is exceptions in read context for array is enabled - */ - public function isExceptionOnInvalidIndexEnabled() - { - return $this->throwExceptionOnInvalidIndex; - } - - /** - * Builds and returns a new propertyAccessor object. - * - * @return PropertyAccessorInterface The built propertyAccessor - */ - public function getPropertyAccessor() - { - return new PropertyAccessor($this->magicCall, $this->throwExceptionOnInvalidIndex); - } -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccessorInterface.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccessorInterface.php deleted file mode 100644 index 1eed7c7b074cf4f91e23d8980349128ff68b8d09..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyAccessorInterface.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\PropertyAccess; - -/** - * Writes and reads values to/from an object/array graph. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -interface PropertyAccessorInterface -{ - /** - * Sets the value at the end of the property path of the object - * - * Example: - * - * use Symfony\Component\PropertyAccess\PropertyAccess; - * - * $propertyAccessor = PropertyAccess::getPropertyAccessor(); - * - * echo $propertyAccessor->setValue($object, 'child.name', 'Fabien'); - * // equals echo $object->getChild()->setName('Fabien'); - * - * This method first tries to find a public setter for each property in the - * path. The name of the setter must be the camel-cased property name - * prefixed with "set". - * - * If the setter does not exist, this method tries to find a public - * property. The value of the property is then changed. - * - * If neither is found, an exception is thrown. - * - * @param object|array $objectOrArray The object or array to modify - * @param string|PropertyPathInterface $propertyPath The property path to modify - * @param mixed $value The value to set at the end of the property path - * - * @throws Exception\NoSuchPropertyException If a property does not exist or is not public. - * @throws Exception\UnexpectedTypeException If a value within the path is neither object - * nor array - */ - public function setValue(&$objectOrArray, $propertyPath, $value); - - /** - * Returns the value at the end of the property path of the object - * - * Example: - * - * use Symfony\Component\PropertyAccess\PropertyAccess; - * - * $propertyAccessor = PropertyAccess::getPropertyAccessor(); - * - * echo $propertyAccessor->getValue($object, 'child.name); - * // equals echo $object->getChild()->getName(); - * - * This method first tries to find a public getter for each property in the - * path. The name of the getter must be the camel-cased property name - * prefixed with "get", "is", or "has". - * - * If the getter does not exist, this method tries to find a public - * property. The value of the property is then returned. - * - * If none of them are found, an exception is thrown. - * - * @param object|array $objectOrArray The object or array to traverse - * @param string|PropertyPathInterface $propertyPath The property path to read - * - * @return mixed The value at the end of the property path - * - * @throws Exception\NoSuchPropertyException If a property does not exist or is not public. - */ - public function getValue($objectOrArray, $propertyPath); -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPath.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPath.php deleted file mode 100644 index 840fc71572339fed682f1ed4f807572745e7244d..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPath.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\PropertyAccess; - -use Symfony\Component\PropertyAccess\Exception\InvalidPropertyPathException; -use Symfony\Component\PropertyAccess\Exception\OutOfBoundsException; -use Symfony\Component\PropertyAccess\Exception\UnexpectedTypeException; - -/** - * Default implementation of {@link PropertyPathInterface}. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class PropertyPath implements \IteratorAggregate, PropertyPathInterface -{ - /** - * Character used for separating between plural and singular of an element. - * @var string - */ - const SINGULAR_SEPARATOR = '|'; - - /** - * The elements of the property path - * @var array - */ - private $elements = array(); - - /** - * The singular forms of the elements in the property path. - * @var array - */ - private $singulars = array(); - - /** - * The number of elements in the property path - * @var integer - */ - private $length; - - /** - * Contains a Boolean for each property in $elements denoting whether this - * element is an index. It is a property otherwise. - * @var array - */ - private $isIndex = array(); - - /** - * String representation of the path - * @var string - */ - private $pathAsString; - - /** - * Constructs a property path from a string. - * - * @param PropertyPath|string $propertyPath The property path as string or instance - * - * @throws UnexpectedTypeException If the given path is not a string - * @throws InvalidPropertyPathException If the syntax of the property path is not valid - */ - public function __construct($propertyPath) - { - // Can be used as copy constructor - if ($propertyPath instanceof PropertyPath) { - /* @var PropertyPath $propertyPath */ - $this->elements = $propertyPath->elements; - $this->singulars = $propertyPath->singulars; - $this->length = $propertyPath->length; - $this->isIndex = $propertyPath->isIndex; - $this->pathAsString = $propertyPath->pathAsString; - - return; - } - if (!is_string($propertyPath)) { - throw new UnexpectedTypeException($propertyPath, 'string or Symfony\Component\PropertyAccess\PropertyPath'); - } - - if ('' === $propertyPath) { - throw new InvalidPropertyPathException('The property path should not be empty.'); - } - - $this->pathAsString = $propertyPath; - $position = 0; - $remaining = $propertyPath; - - // first element is evaluated differently - no leading dot for properties - $pattern = '/^(([^\.\[]+)|\[([^\]]+)\])(.*)/'; - - while (preg_match($pattern, $remaining, $matches)) { - if ('' !== $matches[2]) { - $element = $matches[2]; - $this->isIndex[] = false; - } else { - $element = $matches[3]; - $this->isIndex[] = true; - } - // Disabled this behaviour as the syntax is not yet final - //$pos = strpos($element, self::SINGULAR_SEPARATOR); - $pos = false; - $singular = null; - - if (false !== $pos) { - $singular = substr($element, $pos + 1); - $element = substr($element, 0, $pos); - } - - $this->elements[] = $element; - $this->singulars[] = $singular; - - $position += strlen($matches[1]); - $remaining = $matches[4]; - $pattern = '/^(\.(\w+)|\[([^\]]+)\])(.*)/'; - } - - if ('' !== $remaining) { - throw new InvalidPropertyPathException(sprintf( - 'Could not parse property path "%s". Unexpected token "%s" at position %d', - $propertyPath, - $remaining{0}, - $position - )); - } - - $this->length = count($this->elements); - } - - /** - * {@inheritdoc} - */ - public function __toString() - { - return $this->pathAsString; - } - - /** - * {@inheritdoc} - */ - public function getLength() - { - return $this->length; - } - - /** - * {@inheritdoc} - */ - public function getParent() - { - if ($this->length <= 1) { - return null; - } - - $parent = clone $this; - - --$parent->length; - $parent->pathAsString = substr($parent->pathAsString, 0, max(strrpos($parent->pathAsString, '.'), strrpos($parent->pathAsString, '['))); - array_pop($parent->elements); - array_pop($parent->singulars); - array_pop($parent->isIndex); - - return $parent; - } - - /** - * Returns a new iterator for this path - * - * @return PropertyPathIteratorInterface - */ - public function getIterator() - { - return new PropertyPathIterator($this); - } - - /** - * {@inheritdoc} - */ - public function getElements() - { - return $this->elements; - } - - /** - * {@inheritdoc} - */ - public function getElement($index) - { - if (!isset($this->elements[$index])) { - throw new OutOfBoundsException(sprintf('The index %s is not within the property path', $index)); - } - - return $this->elements[$index]; - } - - /** - * {@inheritdoc} - */ - public function isProperty($index) - { - if (!isset($this->isIndex[$index])) { - throw new OutOfBoundsException(sprintf('The index %s is not within the property path', $index)); - } - - return !$this->isIndex[$index]; - } - - /** - * {@inheritdoc} - */ - public function isIndex($index) - { - if (!isset($this->isIndex[$index])) { - throw new OutOfBoundsException(sprintf('The index %s is not within the property path', $index)); - } - - return $this->isIndex[$index]; - } -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathBuilder.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathBuilder.php deleted file mode 100644 index f4eb0fb93ff508c64aef2868ba161ef0e8e30f01..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathBuilder.php +++ /dev/null @@ -1,306 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess; - -use Symfony\Component\PropertyAccess\Exception\OutOfBoundsException; - -/** - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class PropertyPathBuilder -{ - /** - * @var array - */ - private $elements = array(); - - /** - * @var array - */ - private $isIndex = array(); - - /** - * Creates a new property path builder. - * - * @param null|PropertyPathInterface|string $path The path to initially store - * in the builder. Optional. - */ - public function __construct($path = null) - { - if (null !== $path) { - $this->append($path); - } - } - - /** - * Appends a (sub-) path to the current path. - * - * @param PropertyPathInterface|string $path The path to append. - * @param integer $offset The offset where the appended - * piece starts in $path. - * @param integer $length The length of the appended piece. - * If 0, the full path is appended. - */ - public function append($path, $offset = 0, $length = 0) - { - if (is_string($path)) { - $path = new PropertyPath($path); - } - - if (0 === $length) { - $end = $path->getLength(); - } else { - $end = $offset + $length; - } - - for (; $offset < $end; ++$offset) { - $this->elements[] = $path->getElement($offset); - $this->isIndex[] = $path->isIndex($offset); - } - } - - /** - * Appends an index element to the current path. - * - * @param string $name The name of the appended index - */ - public function appendIndex($name) - { - $this->elements[] = $name; - $this->isIndex[] = true; - } - - /** - * Appends a property element to the current path. - * - * @param string $name The name of the appended property - */ - public function appendProperty($name) - { - $this->elements[] = $name; - $this->isIndex[] = false; - } - - /** - * Removes elements from the current path. - * - * @param integer $offset The offset at which to remove - * @param integer $length The length of the removed piece - * - * @throws OutOfBoundsException if offset is invalid - */ - public function remove($offset, $length = 1) - { - if (!isset($this->elements[$offset])) { - throw new OutOfBoundsException(sprintf('The offset %s is not within the property path', $offset)); - } - - $this->resize($offset, $length, 0); - } - - /** - * Replaces a sub-path by a different (sub-) path. - * - * @param integer $offset The offset at which to replace. - * @param integer $length The length of the piece to replace. - * @param PropertyPathInterface|string $path The path to insert. - * @param integer $pathOffset The offset where the inserted piece - * starts in $path. - * @param integer $pathLength The length of the inserted piece. - * If 0, the full path is inserted. - * - * @throws OutOfBoundsException If the offset is invalid - */ - public function replace($offset, $length, $path, $pathOffset = 0, $pathLength = 0) - { - if (is_string($path)) { - $path = new PropertyPath($path); - } - - if ($offset < 0 && abs($offset) <= $this->getLength()) { - $offset = $this->getLength() + $offset; - } elseif (!isset($this->elements[$offset])) { - throw new OutOfBoundsException('The offset ' . $offset . ' is not within the property path'); - } - - if (0 === $pathLength) { - $pathLength = $path->getLength() - $pathOffset; - } - - $this->resize($offset, $length, $pathLength); - - for ($i = 0; $i < $pathLength; ++$i) { - $this->elements[$offset + $i] = $path->getElement($pathOffset + $i); - $this->isIndex[$offset + $i] = $path->isIndex($pathOffset + $i); - } - } - - /** - * Replaces a property element by an index element. - * - * @param integer $offset The offset at which to replace - * @param string $name The new name of the element. Optional. - * - * @throws OutOfBoundsException If the offset is invalid - */ - public function replaceByIndex($offset, $name = null) - { - if (!isset($this->elements[$offset])) { - throw new OutOfBoundsException(sprintf('The offset %s is not within the property path', $offset)); - } - - if (null !== $name) { - $this->elements[$offset] = $name; - } - - $this->isIndex[$offset] = true; - } - - /** - * Replaces an index element by a property element. - * - * @param integer $offset The offset at which to replace - * @param string $name The new name of the element. Optional. - * - * @throws OutOfBoundsException If the offset is invalid - */ - public function replaceByProperty($offset, $name = null) - { - if (!isset($this->elements[$offset])) { - throw new OutOfBoundsException(sprintf('The offset %s is not within the property path', $offset)); - } - - if (null !== $name) { - $this->elements[$offset] = $name; - } - - $this->isIndex[$offset] = false; - } - - /** - * Returns the length of the current path. - * - * @return integer The path length - */ - public function getLength() - { - return count($this->elements); - } - - /** - * Returns the current property path. - * - * @return PropertyPathInterface The constructed property path - */ - public function getPropertyPath() - { - $pathAsString = $this->__toString(); - - return '' !== $pathAsString ? new PropertyPath($pathAsString) : null; - } - - /** - * Returns the current property path as string. - * - * @return string The property path as string - */ - public function __toString() - { - $string = ''; - - foreach ($this->elements as $offset => $element) { - if ($this->isIndex[$offset]) { - $element = '['.$element.']'; - } elseif ('' !== $string) { - $string .= '.'; - } - - $string .= $element; - } - - return $string; - } - - /** - * Resizes the path so that a chunk of length $cutLength is - * removed at $offset and another chunk of length $insertionLength - * can be inserted. - * - * @param integer $offset The offset where the removed chunk starts - * @param integer $cutLength The length of the removed chunk - * @param integer $insertionLength The length of the inserted chunk - */ - private function resize($offset, $cutLength, $insertionLength) - { - // Nothing else to do in this case - if ($insertionLength === $cutLength) { - return; - } - - $length = count($this->elements); - - if ($cutLength > $insertionLength) { - // More elements should be removed than inserted - $diff = $cutLength - $insertionLength; - $newLength = $length - $diff; - - // Shift elements to the left (left-to-right until the new end) - // Max allowed offset to be shifted is such that - // $offset + $diff < $length (otherwise invalid index access) - // i.e. $offset < $length - $diff = $newLength - for ($i = $offset; $i < $newLength; ++$i) { - $this->elements[$i] = $this->elements[$i + $diff]; - $this->isIndex[$i] = $this->isIndex[$i + $diff]; - } - - // All remaining elements should be removed - for (; $i < $length; ++$i) { - unset($this->elements[$i]); - unset($this->isIndex[$i]); - } - } else { - $diff = $insertionLength - $cutLength; - - $newLength = $length + $diff; - $indexAfterInsertion = $offset + $insertionLength; - - // $diff <= $insertionLength - // $indexAfterInsertion >= $insertionLength - // => $diff <= $indexAfterInsertion - - // In each of the following loops, $i >= $diff must hold, - // otherwise ($i - $diff) becomes negative. - - // Shift old elements to the right to make up space for the - // inserted elements. This needs to be done left-to-right in - // order to preserve an ascending array index order - // Since $i = max($length, $indexAfterInsertion) and $indexAfterInsertion >= $diff, - // $i >= $diff is guaranteed. - for ($i = max($length, $indexAfterInsertion); $i < $newLength; ++$i) { - $this->elements[$i] = $this->elements[$i - $diff]; - $this->isIndex[$i] = $this->isIndex[$i - $diff]; - } - - // Shift remaining elements to the right. Do this right-to-left - // so we don't overwrite elements before copying them - // The last written index is the immediate index after the inserted - // string, because the indices before that will be overwritten - // anyway. - // Since $i >= $indexAfterInsertion and $indexAfterInsertion >= $diff, - // $i >= $diff is guaranteed. - for ($i = $length - 1; $i >= $indexAfterInsertion; --$i) { - $this->elements[$i] = $this->elements[$i - $diff]; - $this->isIndex[$i] = $this->isIndex[$i - $diff]; - } - } - } -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathInterface.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathInterface.php deleted file mode 100644 index 95f34ffae6daf224ce9a800a051886c84c5e2fe1..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathInterface.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\PropertyAccess; - -/** - * A sequence of property names or array indices. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -interface PropertyPathInterface extends \Traversable -{ - /** - * Returns the string representation of the property path - * - * @return string The path as string - */ - public function __toString(); - - /** - * Returns the length of the property path, i.e. the number of elements. - * - * @return integer The path length - */ - public function getLength(); - - /** - * Returns the parent property path. - * - * The parent property path is the one that contains the same items as - * this one except for the last one. - * - * If this property path only contains one item, null is returned. - * - * @return PropertyPath The parent path or null - */ - public function getParent(); - - /** - * Returns the elements of the property path as array - * - * @return array An array of property/index names - */ - public function getElements(); - - /** - * Returns the element at the given index in the property path - * - * @param integer $index The index key - * - * @return string A property or index name - * - * @throws Exception\OutOfBoundsException If the offset is invalid - */ - public function getElement($index); - - /** - * Returns whether the element at the given index is a property - * - * @param integer $index The index in the property path - * - * @return Boolean Whether the element at this index is a property - * - * @throws Exception\OutOfBoundsException If the offset is invalid - */ - public function isProperty($index); - - /** - * Returns whether the element at the given index is an array index - * - * @param integer $index The index in the property path - * - * @return Boolean Whether the element at this index is an array index - * - * @throws Exception\OutOfBoundsException If the offset is invalid - */ - public function isIndex($index); -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathIterator.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathIterator.php deleted file mode 100644 index d6cd49caa077a90561ca7cddf6da54e063eff378..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathIterator.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\PropertyAccess; - -/** - * Traverses a property path and provides additional methods to find out - * information about the current element - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class PropertyPathIterator extends \ArrayIterator implements PropertyPathIteratorInterface -{ - /** - * The traversed property path - * @var PropertyPathInterface - */ - protected $path; - - /** - * Constructor. - * - * @param PropertyPathInterface $path The property path to traverse - */ - public function __construct(PropertyPathInterface $path) - { - parent::__construct($path->getElements()); - - $this->path = $path; - } - - /** - * {@inheritdoc} - */ - public function isIndex() - { - return $this->path->isIndex($this->key()); - } - - /** - * {@inheritdoc} - */ - public function isProperty() - { - return $this->path->isProperty($this->key()); - } -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathIteratorInterface.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathIteratorInterface.php deleted file mode 100644 index cb43f8d7ea5907f76ff7f90c5d18f219b88cb05b..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/PropertyPathIteratorInterface.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\PropertyAccess; - -/** - * @author Bernhard Schussek <bschussek@gmail.com> - */ -interface PropertyPathIteratorInterface extends \Iterator, \SeekableIterator -{ - /** - * Returns whether the current element in the property path is an array - * index. - * - * @return Boolean - */ - public function isIndex(); - - /** - * Returns whether the current element in the property path is a property - * name. - * - * @return Boolean - */ - public function isProperty(); -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/README.md b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/README.md deleted file mode 100644 index 79b6ebca5aa70f4aca7e5218d2ab693f638be1e5..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/README.md +++ /dev/null @@ -1,14 +0,0 @@ -PropertyAccess Component -======================== - -PropertyAccess reads/writes values from/to object/array graphs using a simple -string notation. - -Resources ---------- - -You can run the unit tests with the following command: - - $ cd path/to/Symfony/Component/PropertyAccess/ - $ composer.phar install - $ phpunit diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/StringUtil.php b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/StringUtil.php deleted file mode 100644 index 509bce4b92d8c46a3e1f2e77a084518b8a25b3a9..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/StringUtil.php +++ /dev/null @@ -1,201 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\PropertyAccess; - -/** - * Creates singulars from plurals. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class StringUtil -{ - /** - * Map english plural to singular suffixes - * - * @var array - * - * @see http://english-zone.com/spelling/plurals.html - * @see http://www.scribd.com/doc/3271143/List-of-100-Irregular-Plural-Nouns-in-English - */ - private static $pluralMap = array( - // First entry: plural suffix, reversed - // Second entry: length of plural suffix - // Third entry: Whether the suffix may succeed a vocal - // Fourth entry: Whether the suffix may succeed a consonant - // Fifth entry: singular suffix, normal - - // bacteria (bacterium), criteria (criterion), phenomena (phenomenon) - array('a', 1, true, true, array('on', 'um')), - - // nebulae (nebula) - array('ea', 2, true, true, 'a'), - - // mice (mouse), lice (louse) - array('eci', 3, false, true, 'ouse'), - - // geese (goose) - array('esee', 4, false, true, 'oose'), - - // fungi (fungus), alumni (alumnus), syllabi (syllabus), radii (radius) - array('i', 1, true, true, 'us'), - - // men (man), women (woman) - array('nem', 3, true, true, 'man'), - - // children (child) - array('nerdlihc', 8, true, true, 'child'), - - // oxen (ox) - array('nexo', 4, false, false, 'ox'), - - // indices (index), appendices (appendix), prices (price) - array('seci', 4, false, true, array('ex', 'ix', 'ice')), - - // babies (baby) - array('sei', 3, false, true, 'y'), - - // accesses (access), addresses (address), kisses (kiss) - array('sess', 4, true, false, 'ss'), - - // analyses (analysis), ellipses (ellipsis), funguses (fungus), - // neuroses (neurosis), theses (thesis), emphases (emphasis), - // oases (oasis), crises (crisis), houses (house), bases (base), - // atlases (atlas) - array('ses', 3, true, true, array('s', 'se', 'sis')), - - // objectives (objective), alternative (alternatives) - array('sevit', 5, true, true, 'tive'), - - // lives (life), wives (wife) - array('sevi', 4, false, true, 'ife'), - - // moves (move) - array('sevom', 5, true, true, 'move'), - - // hooves (hoof), dwarves (dwarf), elves (elf), leaves (leaf) - array('sev', 3, true, true, 'f'), - - // axes (axis), axes (ax), axes (axe) - array('sexa', 4, false, false, array('ax', 'axe', 'axis')), - - // indexes (index), matrixes (matrix) - array('sex', 3, true, false, 'x'), - - // quizzes (quiz) - array('sezz', 4, true, false, 'z'), - - // bureaus (bureau) - array('suae', 4, false, true, 'eau'), - - // roses (rose), garages (garage), cassettes (cassette), - // waltzes (waltz), heroes (hero), bushes (bush), arches (arch), - // shoes (shoe) - array('se', 2, true, true, array('', 'e')), - - // tags (tag) - array('s', 1, true, true, ''), - - // chateaux (chateau) - array('xuae', 4, false, true, 'eau'), - ); - - /** - * This class should not be instantiated - */ - private function __construct() {} - - /** - * Returns the singular form of a word - * - * If the method can't determine the form with certainty, an array of the - * possible singulars is returned. - * - * @param string $plural A word in plural form - * @return string|array The singular form or an array of possible singular - * forms - */ - public static function singularify($plural) - { - $pluralRev = strrev($plural); - $lowerPluralRev = strtolower($pluralRev); - $pluralLength = strlen($lowerPluralRev); - - // The outer loop iterates over the entries of the plural table - // The inner loop $j iterates over the characters of the plural suffix - // in the plural table to compare them with the characters of the actual - // given plural suffix - foreach (self::$pluralMap as $map) { - $suffix = $map[0]; - $suffixLength = $map[1]; - $j = 0; - - // Compare characters in the plural table and of the suffix of the - // given plural one by one - while ($suffix[$j] === $lowerPluralRev[$j]) { - // Let $j point to the next character - ++$j; - - // Successfully compared the last character - // Add an entry with the singular suffix to the singular array - if ($j === $suffixLength) { - // Is there any character preceding the suffix in the plural string? - if ($j < $pluralLength) { - $nextIsVocal = false !== strpos('aeiou', $lowerPluralRev[$j]); - - if (!$map[2] && $nextIsVocal) { - // suffix may not succeed a vocal but next char is one - break; - } - - if (!$map[3] && !$nextIsVocal) { - // suffix may not succeed a consonant but next char is one - break; - } - } - - $newBase = substr($plural, 0, $pluralLength - $suffixLength); - $newSuffix = $map[4]; - - // Check whether the first character in the plural suffix - // is uppercased. If yes, uppercase the first character in - // the singular suffix too - $firstUpper = ctype_upper($pluralRev[$j - 1]); - - if (is_array($newSuffix)) { - $singulars = array(); - - foreach ($newSuffix as $newSuffixEntry) { - $singulars[] = $newBase.($firstUpper ? ucfirst($newSuffixEntry) : $newSuffixEntry); - } - - return $singulars; - } - - return $newBase.($firstUpper ? ucFirst($newSuffix) : $newSuffix); - } - - // Suffix is longer than word - if ($j === $pluralLength) { - break; - } - } - } - - // Convert teeth to tooth, feet to foot - if (false !== ($pos = strpos($plural, 'ee')) && strlen($plural) > 3) { - return substr_replace($plural, 'oo', $pos, 2); - } - - // Assume that plural and singular is identical - return $plural; - } -} diff --git a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/composer.json b/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/composer.json deleted file mode 100644 index d79eba11fdcabc452deb9a2c5d12b10871125722..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/property-access/Symfony/Component/PropertyAccess/composer.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "symfony/property-access", - "type": "library", - "description": "Symfony PropertyAccess Component", - "keywords": ["property", "index", "access", "object", "array", "extraction", "injection", "reflection", "property path"], - "homepage": "http://symfony.com", - "license": "MIT", - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "require": { - "php": ">=5.3.3" - }, - "autoload": { - "psr-0": { "Symfony\\Component\\PropertyAccess\\": "" } - }, - "target-dir": "Symfony/Component/PropertyAccess", - "minimum-stability": "dev", - "extra": { - "branch-alias": { - "dev-master": "2.4-dev" - } - } -} diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Annotation/Route.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Annotation/Route.php index ebda0971c5fda315b10a58c72f1aa9f9b85680e9..abdbea27c69968631332b639f5dcc25b9b6bed69 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Annotation/Route.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Annotation/Route.php @@ -22,13 +22,12 @@ class Route { private $path; private $name; - private $requirements = array(); - private $options = array(); - private $defaults = array(); + private $requirements; + private $options; + private $defaults; private $host; - private $methods = array(); - private $schemes = array(); - private $condition; + private $methods; + private $schemes; /** * Constructor. @@ -39,6 +38,12 @@ class Route */ public function __construct(array $data) { + $this->requirements = array(); + $this->options = array(); + $this->defaults = array(); + $this->methods = array(); + $this->schemes = array(); + if (isset($data['value'])) { $data['path'] = $data['value']; unset($data['value']); @@ -148,14 +153,4 @@ public function getMethods() { return $this->methods; } - - public function setCondition($condition) - { - $this->condition = $condition; - } - - public function getCondition() - { - return $this->condition; - } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/ConfigurableRequirementsInterface.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/ConfigurableRequirementsInterface.php index 8c25f34b120abb01748b68927bc5ed193ac45053..5925838c3fa4c3c758917712f3418edcb69fbbc0 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/ConfigurableRequirementsInterface.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/ConfigurableRequirementsInterface.php @@ -25,7 +25,7 @@ * params because they come from third party libs but don't want to have a 404 in * production environment. It should log the mismatch so one can review it. * - setStrictRequirements(null): Return the URL with the given parameters without - * checking the requirements at all. When generating a URL you should either trust + * checking the requirements at all. When generating an URL you should either trust * your params or you validated them beforehand because otherwise it would break your * link anyway. So in production environment you should know that params always pass * the requirements. Thus this option allows to disable the check on URL generation for diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/Dumper/PhpGeneratorDumper.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/Dumper/PhpGeneratorDumper.php index 4d19d2a2ec8db81da3061c579029906b29ea6b5d..42cd9108939dae7a95d33fe3ae3de2c3d4dafa02 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/Dumper/PhpGeneratorDumper.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/Dumper/PhpGeneratorDumper.php @@ -92,7 +92,6 @@ private function generateDeclaredRoutes() $properties[] = $route->getRequirements(); $properties[] = $compiledRoute->getTokens(); $properties[] = $compiledRoute->getHostTokens(); - $properties[] = $route->getSchemes(); $routes .= sprintf(" '%s' => %s,\n", $name, str_replace("\n", '', var_export($properties, true))); } @@ -115,9 +114,9 @@ public function generate(\$name, \$parameters = array(), \$referenceType = self: throw new RouteNotFoundException(sprintf('Unable to generate a URL for the named route "%s" as such route does not exist.', \$name)); } - list(\$variables, \$defaults, \$requirements, \$tokens, \$hostTokens, \$requiredSchemes) = self::\$declaredRoutes[\$name]; + list(\$variables, \$defaults, \$requirements, \$tokens, \$hostTokens) = self::\$declaredRoutes[\$name]; - return \$this->doGenerate(\$variables, \$defaults, \$requirements, \$tokens, \$parameters, \$name, \$referenceType, \$hostTokens, \$requiredSchemes); + return \$this->doGenerate(\$variables, \$defaults, \$requirements, \$tokens, \$parameters, \$name, \$referenceType, \$hostTokens); } EOF; } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/UrlGenerator.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/UrlGenerator.php index 468708479bbe9c1ad8bafabb3c5a79fdabf23b00..f224cb3f6d9f63da4b0d0f0b2cb53cb7e2949c87 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/UrlGenerator.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Generator/UrlGenerator.php @@ -137,7 +137,7 @@ public function generate($name, $parameters = array(), $referenceType = self::AB // the Route has a cache of its own and is not recompiled as long as it does not get modified $compiledRoute = $route->compile(); - return $this->doGenerate($compiledRoute->getVariables(), $route->getDefaults(), $route->getRequirements(), $compiledRoute->getTokens(), $parameters, $name, $referenceType, $compiledRoute->getHostTokens(), $route->getSchemes()); + return $this->doGenerate($compiledRoute->getVariables(), $route->getDefaults(), $route->getRequirements(), $compiledRoute->getTokens(), $parameters, $name, $referenceType, $compiledRoute->getHostTokens()); } /** @@ -145,7 +145,7 @@ public function generate($name, $parameters = array(), $referenceType = self::AB * @throws InvalidParameterException When a parameter value for a placeholder is not correct because * it does not match the requirement */ - protected function doGenerate($variables, $defaults, $requirements, $tokens, $parameters, $name, $referenceType, $hostTokens, array $requiredSchemes = array()) + protected function doGenerate($variables, $defaults, $requirements, $tokens, $parameters, $name, $referenceType, $hostTokens) { $variables = array_flip($variables); $mergedParams = array_replace($defaults, $this->context->getParameters(), $parameters); @@ -188,7 +188,7 @@ protected function doGenerate($variables, $defaults, $requirements, $tokens, $pa $url = '/'; } - // the contexts base URL is already encoded (see Symfony\Component\HttpFoundation\Request) + // the contexts base url is already encoded (see Symfony\Component\HttpFoundation\Request) $url = strtr(rawurlencode($url), $this->decodedChars); // the path segments "." and ".." are interpreted as relative reference when resolving a URI; see http://tools.ietf.org/html/rfc3986#section-3.3 @@ -204,24 +204,7 @@ protected function doGenerate($variables, $defaults, $requirements, $tokens, $pa $schemeAuthority = ''; if ($host = $this->context->getHost()) { $scheme = $this->context->getScheme(); - - if ($requiredSchemes) { - $schemeMatched = false; - foreach ($requiredSchemes as $requiredScheme) { - if ($scheme === $requiredScheme) { - $schemeMatched = true; - - break; - } - } - - if (!$schemeMatched) { - $referenceType = self::ABSOLUTE_URL; - $scheme = current($requiredSchemes); - } - - } elseif (isset($requirements['_scheme']) && ($req = strtolower($requirements['_scheme'])) && $scheme !== $req) { - // We do this for BC; to be removed if _scheme is not supported anymore + if (isset($requirements['_scheme']) && ($req = strtolower($requirements['_scheme'])) && $scheme !== $req) { $referenceType = self::ABSOLUTE_URL; $scheme = $req; } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/AnnotationClassLoader.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/AnnotationClassLoader.php index af70a888b8673a5cf6d4cfa84327493275150da6..9831d85a09673b3403c8348362dc16afd9f50b02 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/AnnotationClassLoader.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/AnnotationClassLoader.php @@ -116,7 +116,6 @@ public function load($class, $type = null) 'schemes' => array(), 'methods' => array(), 'host' => '', - 'condition' => '', ); $class = new \ReflectionClass($class); @@ -155,10 +154,6 @@ public function load($class, $type = null) if (null !== $annot->getHost()) { $globals['host'] = $annot->getHost(); } - - if (null !== $annot->getCondition()) { - $globals['condition'] = $annot->getCondition(); - } } $collection = new RouteCollection(); @@ -185,7 +180,7 @@ protected function addRoute(RouteCollection $collection, $annot, $globals, \Refl $defaults = array_replace($globals['defaults'], $annot->getDefaults()); foreach ($method->getParameters() as $param) { - if (!isset($defaults[$param->getName()]) && $param->isOptional()) { + if ($param->isOptional()) { $defaults[$param->getName()] = $param->getDefaultValue(); } } @@ -199,12 +194,7 @@ protected function addRoute(RouteCollection $collection, $annot, $globals, \Refl $host = $globals['host']; } - $condition = $annot->getCondition(); - if (null === $condition) { - $condition = $globals['condition']; - } - - $route = new Route($globals['path'].$annot->getPath(), $defaults, $requirements, $options, $host, $schemes, $methods, $condition); + $route = new Route($globals['path'].$annot->getPath(), $defaults, $requirements, $options, $host, $schemes, $methods); $this->configureRoute($route, $class, $method, $annot); diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/XmlFileLoader.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/XmlFileLoader.php index e854202f7092cbc9215755df85a4125ae9d24699..da7b33d856ff16b7460a1cdb48e985a85dd1f62f 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/XmlFileLoader.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/XmlFileLoader.php @@ -129,9 +129,9 @@ protected function parseRoute(RouteCollection $collection, \DOMElement $node, $p $schemes = preg_split('/[\s,\|]++/', $node->getAttribute('schemes'), -1, PREG_SPLIT_NO_EMPTY); $methods = preg_split('/[\s,\|]++/', $node->getAttribute('methods'), -1, PREG_SPLIT_NO_EMPTY); - list($defaults, $requirements, $options, $condition) = $this->parseConfigs($node, $path); + list($defaults, $requirements, $options) = $this->parseConfigs($node, $path); - $route = new Route($node->getAttribute('path'), $defaults, $requirements, $options, $node->getAttribute('host'), $schemes, $methods, $condition); + $route = new Route($node->getAttribute('path'), $defaults, $requirements, $options, $node->getAttribute('host'), $schemes, $methods); $collection->add($id, $route); } @@ -157,7 +157,7 @@ protected function parseImport(RouteCollection $collection, \DOMElement $node, $ $schemes = $node->hasAttribute('schemes') ? preg_split('/[\s,\|]++/', $node->getAttribute('schemes'), -1, PREG_SPLIT_NO_EMPTY) : null; $methods = $node->hasAttribute('methods') ? preg_split('/[\s,\|]++/', $node->getAttribute('methods'), -1, PREG_SPLIT_NO_EMPTY) : null; - list($defaults, $requirements, $options, $condition) = $this->parseConfigs($node, $path); + list($defaults, $requirements, $options) = $this->parseConfigs($node, $path); $this->setCurrentDir(dirname($path)); @@ -211,7 +211,6 @@ private function parseConfigs(\DOMElement $node, $path) $defaults = array(); $requirements = array(); $options = array(); - $condition = null; foreach ($node->getElementsByTagNameNS(self::NAMESPACE_URI, '*') as $n) { switch ($n->localName) { @@ -229,14 +228,11 @@ private function parseConfigs(\DOMElement $node, $path) case 'option': $options[$n->getAttribute('key')] = trim($n->textContent); break; - case 'condition': - $condition = trim($n->textContent); - break; default: throw new \InvalidArgumentException(sprintf('Unknown tag "%s" used in file "%s". Expected "default", "requirement" or "option".', $n->localName, $path)); } } - return array($defaults, $requirements, $options, $condition); + return array($defaults, $requirements, $options); } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/YamlFileLoader.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/YamlFileLoader.php index d3eaea42e60415441f0a45545a6c80a73ef5cb70..9deea7fe4f5525714b4333d1f5b62029288bf4d6 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/YamlFileLoader.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/YamlFileLoader.php @@ -28,7 +28,7 @@ class YamlFileLoader extends FileLoader { private static $availableKeys = array( - 'resource', 'type', 'prefix', 'pattern', 'path', 'host', 'schemes', 'methods', 'defaults', 'requirements', 'options', 'condition' + 'resource', 'type', 'prefix', 'pattern', 'path', 'host', 'schemes', 'methods', 'defaults', 'requirements', 'options', ); private $yamlParser; @@ -123,9 +123,8 @@ protected function parseRoute(RouteCollection $collection, $name, array $config, $host = isset($config['host']) ? $config['host'] : ''; $schemes = isset($config['schemes']) ? $config['schemes'] : array(); $methods = isset($config['methods']) ? $config['methods'] : array(); - $condition = isset($config['condition']) ? $config['condition'] : null; - $route = new Route($config['path'], $defaults, $requirements, $options, $host, $schemes, $methods, $condition); + $route = new Route($config['path'], $defaults, $requirements, $options, $host, $schemes, $methods); $collection->add($name, $route); } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/schema/routing/routing-1.0.xsd b/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/schema/routing/routing-1.0.xsd index 9ab969a41d8a2e79c7a8159ee229d75e8df8e09f..daea8143865c89eff0250c7438243afa27b9142f 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/schema/routing/routing-1.0.xsd +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Loader/schema/routing/routing-1.0.xsd @@ -29,7 +29,6 @@ <xsd:element name="default" nillable="true" type="element" /> <xsd:element name="requirement" type="element" /> <xsd:element name="option" type="element" /> - <xsd:element name="condition" type="condition" /> </xsd:choice> </xsd:group> @@ -62,9 +61,4 @@ </xsd:extension> </xsd:simpleContent> </xsd:complexType> - - <xsd:simpleType name="condition"> - <xsd:restriction base="xsd:string"> - </xsd:restriction> - </xsd:simpleType> </xsd:schema> diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/ApacheMatcherDumper.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/ApacheMatcherDumper.php index 5b32684876b96ea58ab00d85af5246f60acd2cfd..01d8c035894763d966691575f02c22e5cac0f740 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/ApacheMatcherDumper.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/ApacheMatcherDumper.php @@ -50,9 +50,6 @@ public function dump(array $options = array()) $prevHostRegex = ''; foreach ($this->getRoutes()->all() as $name => $route) { - if ($route->getCondition()) { - throw new \LogicException(sprintf('Unable to dump the routes for Apache as route "%s" has a condition.', $name)); - } $compiledRoute = $route->compile(); $hostRegex = $compiledRoute->getHostRegex(); diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/MatcherDumperInterface.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/MatcherDumperInterface.php index 5e7c134b9f394752d3c6d4dd4b1911f2c47db36b..f85e4ceff0a7778880b1f2c6d0b7be7eb6b5faea 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/MatcherDumperInterface.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/MatcherDumperInterface.php @@ -11,8 +11,6 @@ namespace Symfony\Component\Routing\Matcher\Dumper; -use Symfony\Component\Routing\RouteCollection; - /** * MatcherDumperInterface is the interface that all matcher dumper classes must implement. * diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/PhpMatcherDumper.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/PhpMatcherDumper.php index 784f3099daf59e5e9efe5d74074d788946ff150d..dc17ffbe984a3670a55697b4776fcb63f83d1623 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/PhpMatcherDumper.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/Dumper/PhpMatcherDumper.php @@ -13,7 +13,6 @@ use Symfony\Component\Routing\Route; use Symfony\Component\Routing\RouteCollection; -use Symfony\Component\ExpressionLanguage\ExpressionLanguage; /** * PhpMatcherDumper creates a PHP class able to match URLs for a given set of routes. @@ -24,8 +23,6 @@ */ class PhpMatcherDumper extends MatcherDumper { - private $expressionLanguage; - /** * Dumps a set of routes to a PHP class. * @@ -94,8 +91,6 @@ public function match(\$pathinfo) { \$allow = array(); \$pathinfo = rawurldecode(\$pathinfo); - \$context = \$this->context; - \$request = \$this->request; $code @@ -242,10 +237,6 @@ private function compileRoute(Route $route, $name, $supportsRedirections, $paren $hostMatches = true; } - if ($route->getCondition()) { - $conditions[] = $this->getExpressionLanguage()->compile($route->getCondition(), array('context', 'request')); - } - $conditions = implode(' && ', $conditions); $code .= <<<EOF @@ -254,8 +245,9 @@ private function compileRoute(Route $route, $name, $supportsRedirections, $paren EOF; - $gotoname = 'not_'.preg_replace('/[^A-Za-z0-9_]/', '', $name); if ($methods) { + $gotoname = 'not_'.preg_replace('/[^A-Za-z0-9_]/', '', $name); + if (1 === count($methods)) { $code .= <<<EOF if (\$this->context->getMethod() != '$methods[0]') { @@ -288,15 +280,14 @@ private function compileRoute(Route $route, $name, $supportsRedirections, $paren EOF; } - if ($schemes = $route->getSchemes()) { + if ($scheme = $route->getRequirement('_scheme')) { if (!$supportsRedirections) { - throw new \LogicException('The "schemes" requirement is only supported for URL matchers that implement RedirectableUrlMatcherInterface.'); + throw new \LogicException('The "_scheme" requirement is only supported for URL matchers that implement RedirectableUrlMatcherInterface.'); } - $schemes = str_replace("\n", '', var_export(array_flip($schemes), true)); + $code .= <<<EOF - \$requiredSchemes = $schemes; - if (!isset(\$requiredSchemes[\$this->context->getScheme()])) { - return \$this->redirect(\$pathinfo, '$name', key(\$requiredSchemes)); + if (\$this->context->getScheme() !== '$scheme') { + return \$this->redirect(\$pathinfo, '$name', '$scheme'); } @@ -314,11 +305,8 @@ private function compileRoute(Route $route, $name, $supportsRedirections, $paren } $vars[] = "array('_route' => '$name')"; - $code .= sprintf( - " return \$this->mergeDefaults(array_replace(%s), %s);\n", - implode(', ', $vars), - str_replace("\n", '', var_export($route->getDefaults(), true)) - ); + $code .= sprintf(" return \$this->mergeDefaults(array_replace(%s), %s);\n" + , implode(', ', $vars), str_replace("\n", '', var_export($route->getDefaults(), true))); } elseif ($route->getDefaults()) { $code .= sprintf(" return %s;\n", str_replace("\n", '', var_export(array_replace($route->getDefaults(), array('_route' => $name)), true))); @@ -387,16 +375,4 @@ private function buildPrefixTree(DumperCollection $collection) return $tree; } - - private function getExpressionLanguage() - { - if (null === $this->expressionLanguage) { - if (!class_exists('Symfony\Component\ExpressionLanguage\ExpressionLanguage')) { - throw new \RuntimeException('Unable to use expressions as the Symfony ExpressionLanguage component is not installed.'); - } - $this->expressionLanguage = new ExpressionLanguage(); - } - - return $this->expressionLanguage; - } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/RedirectableUrlMatcher.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/RedirectableUrlMatcher.php index 3d13181f467dde73b9cbf01b9f006aeb00516a9b..51e80057cd53b2b380d6ca2a68b3b8a88ea2e08c 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/RedirectableUrlMatcher.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/RedirectableUrlMatcher.php @@ -50,16 +50,10 @@ public function match($pathinfo) */ protected function handleRouteRequirements($pathinfo, $name, Route $route) { - // expression condition - if ($route->getCondition() && !$this->getExpressionLanguage()->evaluate($route->getCondition(), array('context' => $this->context, 'request' => $this->request))) { - return array(self::REQUIREMENT_MISMATCH, null); - } - // check HTTP scheme requirement - $scheme = $this->context->getScheme(); - $schemes = $route->getSchemes(); - if ($schemes && !$route->hasScheme($scheme)) { - return array(self::ROUTE_MATCH, $this->redirect($pathinfo, $name, current($schemes))); + $scheme = $route->getRequirement('_scheme'); + if ($scheme && $this->context->getScheme() !== $scheme) { + return array(self::ROUTE_MATCH, $this->redirect($pathinfo, $name, $scheme)); } return array(self::REQUIREMENT_MATCH, null); diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/TraceableUrlMatcher.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/TraceableUrlMatcher.php index 22af699d4a7c27d80b5aa97e5b7a98e09aa7ed82..c09f83e86a227f6f2ac6902cb8ea576a53fb0c2a 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/TraceableUrlMatcher.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/TraceableUrlMatcher.php @@ -14,6 +14,7 @@ use Symfony\Component\Routing\Exception\ExceptionInterface; use Symfony\Component\Routing\Route; use Symfony\Component\Routing\RouteCollection; +use Symfony\Component\Routing\Matcher\UrlMatcher; /** * TraceableUrlMatcher helps debug path info matching by tracing the match. @@ -74,7 +75,7 @@ protected function matchCollection($pathinfo, RouteCollection $routes) if ($compiledRoute->getHostRegex() && !preg_match($compiledRoute->getHostRegex(), $this->context->getHost(), $hostMatches)) { $this->addTrace(sprintf('Host "%s" does not match the requirement ("%s")', $this->context->getHost(), $route->getHost()), self::ROUTE_ALMOST_MATCHES, $name, $route); - continue; + return true; } // check HTTP method requirement @@ -93,21 +94,10 @@ protected function matchCollection($pathinfo, RouteCollection $routes) } } - // check condition - if ($condition = $route->getCondition()) { - if (!$this->getExpressionLanguage()->evaluate($condition, array('context' => $this->context, 'request' => $this->request))) { - $this->addTrace(sprintf('Condition "%s" does not evaluate to "true"', $condition), self::ROUTE_ALMOST_MATCHES, $name, $route); - - continue; - } - } - // check HTTP scheme requirement - if ($requiredSchemes = $route->getSchemes()) { - $scheme = $this->context->getScheme(); - - if (!$route->hasScheme($scheme)) { - $this->addTrace(sprintf('Scheme "%s" does not match any of the required schemes ("%s"); the user will be redirected to first required scheme', $scheme, implode(', ', $requiredSchemes)), self::ROUTE_ALMOST_MATCHES, $name, $route); + if ($scheme = $route->getRequirement('_scheme')) { + if ($this->context->getScheme() !== $scheme) { + $this->addTrace(sprintf('Scheme "%s" does not match the requirement ("%s"); the user will be redirected', $this->context->getScheme(), $scheme), self::ROUTE_ALMOST_MATCHES, $name, $route); return true; } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/UrlMatcher.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/UrlMatcher.php index 8d081a8629de5d4f719087e03902541dd4a5c6e4..db18ec4e7b25938afb893f654b403180fb75dae3 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/UrlMatcher.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Matcher/UrlMatcher.php @@ -16,8 +16,6 @@ use Symfony\Component\Routing\RouteCollection; use Symfony\Component\Routing\RequestContext; use Symfony\Component\Routing\Route; -use Symfony\Component\HttpFoundation\Request; -use Symfony\Component\ExpressionLanguage\ExpressionLanguage; /** * UrlMatcher matches URL based on a set of routes. @@ -26,7 +24,7 @@ * * @api */ -class UrlMatcher implements UrlMatcherInterface, RequestMatcherInterface +class UrlMatcher implements UrlMatcherInterface { const REQUIREMENT_MATCH = 0; const REQUIREMENT_MISMATCH = 1; @@ -47,9 +45,6 @@ class UrlMatcher implements UrlMatcherInterface, RequestMatcherInterface */ protected $routes; - protected $request; - protected $expressionLanguage; - /** * Constructor. * @@ -96,20 +91,6 @@ public function match($pathinfo) : new ResourceNotFoundException(); } - /** - * {@inheritdoc} - */ - public function matchRequest(Request $request) - { - $this->request = $request; - - $ret = $this->match($request->getPathInfo()); - - $this->request = null; - - return $ret; - } - /** * Tries to match a URL with a set of routes. * @@ -199,14 +180,9 @@ protected function getAttributes(Route $route, $name, array $attributes) */ protected function handleRouteRequirements($pathinfo, $name, Route $route) { - // expression condition - if ($route->getCondition() && !$this->getExpressionLanguage()->evaluate($route->getCondition(), array('context' => $this->context, 'request' => $this->request))) { - return array(self::REQUIREMENT_MISMATCH, null); - } - // check HTTP scheme requirement - $scheme = $this->context->getScheme(); - $status = $route->getSchemes() && !$route->hasScheme($scheme) ? self::REQUIREMENT_MISMATCH : self::REQUIREMENT_MATCH; + $scheme = $route->getRequirement('_scheme'); + $status = $scheme && $scheme !== $this->context->getScheme() ? self::REQUIREMENT_MISMATCH : self::REQUIREMENT_MATCH; return array($status, null); } @@ -229,16 +205,4 @@ protected function mergeDefaults($params, $defaults) return $defaults; } - - protected function getExpressionLanguage() - { - if (null === $this->expressionLanguage) { - if (!class_exists('Symfony\Component\ExpressionLanguage\ExpressionLanguage')) { - throw new \RuntimeException('Unable to use expressions as the Symfony ExpressionLanguage component is not installed.'); - } - $this->expressionLanguage = new ExpressionLanguage(); - } - - return $this->expressionLanguage; - } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/README.md b/core/vendor/symfony/routing/Symfony/Component/Routing/README.md index 83febc79bbda839ddd66c8b21a7b6f0c04ed7256..663844a6742938c4ca78aa4bf57ff05592168980 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/README.md +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/README.md @@ -30,5 +30,5 @@ Resources You can run the unit tests with the following command: $ cd path/to/Symfony/Component/Routing/ - $ composer.phar install + $ composer.phar install --dev $ phpunit diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Route.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Route.php index 08005541461ef1ad96234e722700a26304c7379f..5bc535c683ed295ec1f3717b03f3991d01a56719 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Route.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Route.php @@ -61,8 +61,6 @@ class Route implements \Serializable */ private $compiled; - private $condition; - /** * Constructor. * @@ -77,11 +75,10 @@ class Route implements \Serializable * @param string $host The host pattern to match * @param string|array $schemes A required URI scheme or an array of restricted schemes * @param string|array $methods A required HTTP method or an array of restricted methods - * @param string $condition A condition that should evaluate to true for the route to match * * @api */ - public function __construct($path, array $defaults = array(), array $requirements = array(), array $options = array(), $host = '', $schemes = array(), $methods = array(), $condition = null) + public function __construct($path, array $defaults = array(), array $requirements = array(), array $options = array(), $host = '', $schemes = array(), $methods = array()) { $this->setPath($path); $this->setDefaults($defaults); @@ -96,7 +93,6 @@ public function __construct($path, array $defaults = array(), array $requirement if ($methods) { $this->setMethods($methods); } - $this->setCondition($condition); } public function serialize() @@ -109,7 +105,6 @@ public function serialize() 'options' => $this->options, 'schemes' => $this->schemes, 'methods' => $this->methods, - 'condition' => $this->condition, )); } @@ -123,7 +118,6 @@ public function unserialize($data) $this->options = $data['options']; $this->schemes = $data['schemes']; $this->methods = $data['methods']; - $this->condition = $data['condition']; } /** @@ -247,25 +241,6 @@ public function setSchemes($schemes) return $this; } - /** - * Checks if a scheme requirement has been set. - * - * @param string $scheme - * - * @return Boolean true if the scheme requirement exists, otherwise false - */ - public function hasScheme($scheme) - { - $scheme = strtolower($scheme); - foreach ($this->schemes as $requiredScheme) { - if ($scheme === $requiredScheme) { - return true; - } - } - - return false; - } - /** * Returns the uppercased HTTP methods this route is restricted to. * So an empty array means that any method is allowed. @@ -568,33 +543,6 @@ public function setRequirement($key, $regex) return $this; } - /** - * Returns the condition. - * - * @return string The condition - */ - public function getCondition() - { - return $this->condition; - } - - /** - * Sets the condition. - * - * This method implements a fluent interface. - * - * @param string $condition The condition - * - * @return Route The current Route instance - */ - public function setCondition($condition) - { - $this->condition = (string) $condition; - $this->compiled = null; - - return $this; - } - /** * Compiles the route. * diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/RouteCollection.php b/core/vendor/symfony/routing/Symfony/Component/Routing/RouteCollection.php index f02832424236d54426a5b4905e2d5205cebc15b5..499fe0f04f83a8c8e96fc06a573e688141d5960f 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/RouteCollection.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/RouteCollection.php @@ -177,20 +177,6 @@ public function setHost($pattern, array $defaults = array(), array $requirements } } - /** - * Sets a condition on all routes. - * - * Existing conditions will be overridden. - * - * @param string $condition The condition - */ - public function setCondition($condition) - { - foreach ($this->routes as $route) { - $route->setCondition($condition); - } - } - /** * Adds defaults to all routes. * diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Router.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Router.php index 62abec387245f5694a20230c662ee39b55dce986..d1e289795c189db0a732925b698d9506e1160aa6 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Router.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Router.php @@ -16,11 +16,7 @@ use Psr\Log\LoggerInterface; use Symfony\Component\Routing\Generator\ConfigurableRequirementsInterface; use Symfony\Component\Routing\Generator\UrlGeneratorInterface; -use Symfony\Component\Routing\Generator\Dumper\GeneratorDumperInterface; -use Symfony\Component\Routing\Matcher\RequestMatcherInterface; use Symfony\Component\Routing\Matcher\UrlMatcherInterface; -use Symfony\Component\Routing\Matcher\Dumper\MatcherDumperInterface; -use Symfony\Component\HttpFoundation\Request; /** * The Router class is an example of the integration of all pieces of the @@ -28,7 +24,7 @@ * * @author Fabien Potencier <fabien@symfony.com> */ -class Router implements RouterInterface, RequestMatcherInterface +class Router implements RouterInterface { /** * @var UrlMatcherInterface|null @@ -84,7 +80,7 @@ public function __construct(LoaderInterface $loader, $resource, array $options = $this->loader = $loader; $this->resource = $resource; $this->logger = $logger; - $this->context = $context ?: new RequestContext(); + $this->context = null === $context ? new RequestContext() : $context; $this->setOptions($options); } @@ -219,20 +215,6 @@ public function match($pathinfo) return $this->getMatcher()->match($pathinfo); } - /** - * {@inheritdoc} - */ - public function matchRequest(Request $request) - { - $matcher = $this->getMatcher(); - if (!$matcher instanceof RequestMatcherInterface) { - // fallback to the default UrlMatcherInterface - return $matcher->match($request->getPathInfo()); - } - - return $matcher->matchRequest($request); - } - /** * Gets the UrlMatcher instance associated with this Router. * @@ -250,8 +232,8 @@ public function getMatcher() $class = $this->options['matcher_cache_class']; $cache = new ConfigCache($this->options['cache_dir'].'/'.$class.'.php', $this->options['debug']); - if (!$cache->isFresh()) { - $dumper = $this->getMatcherDumperInstance(); + if (!$cache->isFresh($class)) { + $dumper = new $this->options['matcher_dumper_class']($this->getRouteCollection()); $options = array( 'class' => $class, @@ -282,8 +264,8 @@ public function getGenerator() } else { $class = $this->options['generator_cache_class']; $cache = new ConfigCache($this->options['cache_dir'].'/'.$class.'.php', $this->options['debug']); - if (!$cache->isFresh()) { - $dumper = $this->getGeneratorDumperInstance(); + if (!$cache->isFresh($class)) { + $dumper = new $this->options['generator_dumper_class']($this->getRouteCollection()); $options = array( 'class' => $class, @@ -304,20 +286,4 @@ public function getGenerator() return $this->generator; } - - /** - * @return GeneratorDumperInterface - */ - protected function getGeneratorDumperInstance() - { - return new $this->options['generator_dumper_class']($this->getRouteCollection()); - } - - /** - * @return MatcherDumperInterface - */ - protected function getMatcherDumperInstance() - { - return new $this->options['matcher_dumper_class']($this->getRouteCollection()); - } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Annotation/RouteTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Annotation/RouteTest.php index bd0167089e05dae531beebf2fd9a1c055f898b6d..b58869f7afc69589d331f9aeb3416db443002ed3 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Annotation/RouteTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Annotation/RouteTest.php @@ -35,16 +35,15 @@ public function testRouteParameters($parameter, $value, $getter) public function getValidParameters() { return array( - array('value', '/Blog', 'getPattern'), - array('value', '/Blog', 'getPath'), - array('requirements', array('_method' => 'GET'), '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', array('{locale}.example.com'), 'getHost'), - array('condition', array('context.getMethod() == "GET"'), 'getCondition'), + array('value', '/Blog', 'getPattern'), + array('value', '/Blog', 'getPath'), + array('requirements', array('_method' => 'GET'), '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', array('{locale}.example.com'), 'getHost') ); } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/CustomXmlFileLoader.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/CustomXmlFileLoader.php index 2e9b028de86098571289f69db1f9422aba5f6514..12a5bedb4fc9e9af1755c9eb6cfab79f412f716e 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/CustomXmlFileLoader.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/CustomXmlFileLoader.php @@ -21,6 +21,6 @@ class CustomXmlFileLoader extends XmlFileLoader { protected function loadFile($file) { - return XmlUtils::loadFile($file, function () { return true; }); + return XmlUtils::loadFile($file, function() { return true; }); } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher1.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher1.php index 248a4f153fc3eda4a62146a6b0db40eb64d6f69c..e5f7665c81bc9c4431851437e4003acfd8a9cf9a 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher1.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher1.php @@ -24,8 +24,6 @@ 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)) { diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher2.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher2.php index acf1163c5b390846e08009bbb6784fbb689ea534..ad157909b8c0ea545bbc37f81557be733637aceb 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher2.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher2.php @@ -24,8 +24,6 @@ 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)) { @@ -321,9 +319,8 @@ public function match($pathinfo) // secure if ($pathinfo === '/secure') { - $requiredSchemes = array ( 'https' => 0,); - if (!isset($requiredSchemes[$this->context->getScheme()])) { - return $this->redirect($pathinfo, 'secure', key($requiredSchemes)); + if ($this->context->getScheme() !== 'https') { + return $this->redirect($pathinfo, 'secure', 'https'); } return array('_route' => 'secure'); @@ -331,9 +328,8 @@ public function match($pathinfo) // nonsecure if ($pathinfo === '/nonsecure') { - $requiredSchemes = array ( 'http' => 0,); - if (!isset($requiredSchemes[$this->context->getScheme()])) { - return $this->redirect($pathinfo, 'nonsecure', key($requiredSchemes)); + if ($this->context->getScheme() !== 'http') { + return $this->redirect($pathinfo, 'nonsecure', 'http'); } return array('_route' => 'nonsecure'); diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher3.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher3.php index c3463fa77208aa349154bee55efe2da55ebc91ee..f2f642eb86691df7aa80c39686dd6724121b87b1 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher3.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/dumper/url_matcher3.php @@ -24,8 +24,6 @@ public function match($pathinfo) { $allow = array(); $pathinfo = rawurldecode($pathinfo); - $context = $this->context; - $request = $this->request; if (0 === strpos($pathinfo, '/rootprefix')) { // static @@ -40,11 +38,6 @@ public function match($pathinfo) } - // 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/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.php index b652d946565991219eb8ec643af4e42fcc6001d9..b8bbbb5f8f01de11ee2885deb6737a75b2673b4c 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.php @@ -10,18 +10,14 @@ array('compiler_class' => 'RouteCompiler'), '{locale}.example.com', array('https'), - array('GET','POST','put','OpTiOnS'), - 'context.getMethod() == "GET"' + array('GET','POST','put','OpTiOnS') )); $collection->add('blog_show_legacy', new Route( '/blog/{slug}', array('_controller' => 'MyBlogBundle:Blog:show'), array('_method' => 'GET|POST|put|OpTiOnS', '_scheme' => 'https', 'locale' => '\w+',), array('compiler_class' => 'RouteCompiler'), - '{locale}.example.com', - array(), - array(), - 'context.getMethod() == "GET"' + '{locale}.example.com' )); return $collection; diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.xml b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.xml index cfee9d6882839e5c160fa376654b95ce50bc41ec..b9f22347b40cb438d3f06b45523cdd6061b30b6c 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.xml +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.xml @@ -8,7 +8,6 @@ <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_legacy" pattern="/blog/{slug}" host="{locale}.example.com"> @@ -18,6 +17,5 @@ <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/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.yml b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.yml index 48cf7f8817cc26b9d4fd6496588a0bcd6aa8c16d..4ada8832197b83752f3501c96cd2b4522d18ce4a 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.yml +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Fixtures/validpattern.yml @@ -5,7 +5,6 @@ blog_show: requirements: { 'locale': '\w+' } methods: ['GET','POST','put','OpTiOnS'] schemes: ['https'] - condition: 'context.getMethod() == "GET"' options: compiler_class: RouteCompiler @@ -14,6 +13,5 @@ blog_show_legacy: 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/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Generator/Dumper/PhpGeneratorDumperTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Generator/Dumper/PhpGeneratorDumperTest.php index 78e3907fd56bfcc8508035e529dc6b8c3f609884..ab5f4cdae0aabe19565d4aed64f11eaaf701f14c 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Generator/Dumper/PhpGeneratorDumperTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Generator/Dumper/PhpGeneratorDumperTest.php @@ -114,37 +114,4 @@ public function testDumpForRouteWithDefaults() $this->assertEquals($url, '/testing'); } - - public function testDumpWithSchemeRequirement() - { - $this->routeCollection->add('Test1', new Route('/testing', array(), array(), array(), '', array('ftp', 'https'))); - $this->routeCollection->add('Test2', new Route('/testing_bc', array(), array('_scheme' => 'https'))); // BC - - 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); - $absoluteUrlBC = $projectUrlGenerator->generate('Test2', array(), true); - $relativeUrl = $projectUrlGenerator->generate('Test1', array(), false); - $relativeUrlBC = $projectUrlGenerator->generate('Test2', array(), false); - - $this->assertEquals($absoluteUrl, 'ftp://localhost/app.php/testing'); - $this->assertEquals($absoluteUrlBC, 'https://localhost/app.php/testing_bc'); - $this->assertEquals($relativeUrl, 'ftp://localhost/app.php/testing'); - $this->assertEquals($relativeUrlBC, 'https://localhost/app.php/testing_bc'); - - $projectUrlGenerator = new \SchemeUrlGenerator(new RequestContext('/app.php', 'GET', 'localhost', 'https')); - - $absoluteUrl = $projectUrlGenerator->generate('Test1', array(), true); - $absoluteUrlBC = $projectUrlGenerator->generate('Test2', array(), true); - $relativeUrl = $projectUrlGenerator->generate('Test1', array(), false); - $relativeUrlBC = $projectUrlGenerator->generate('Test2', array(), false); - - $this->assertEquals($absoluteUrl, 'https://localhost/app.php/testing'); - $this->assertEquals($absoluteUrlBC, 'https://localhost/app.php/testing_bc'); - $this->assertEquals($relativeUrl, '/app.php/testing'); - $this->assertEquals($relativeUrlBC, '/app.php/testing_bc'); - } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php index 143e3448a29c1e7eb544b10ee3cbf39c34e2eb4d..5f8ef491276c2d29c0f52b376c65ad86b604c331 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php @@ -207,6 +207,10 @@ public function testGenerateForRouteWithInvalidOptionalParameterNonStrict() public function testGenerateForRouteWithInvalidOptionalParameterNonStrictWithLogger() { + if (!interface_exists('Psr\Log\LoggerInterface')) { + $this->markTestSkipped('The "psr/log" package is not available'); + } + $routes = $this->getRoutes('test', new Route('/testing/{foo}', array('foo' => '1'), array('foo' => 'd+'))); $logger = $this->getMock('Psr\Log\LoggerInterface'); $logger->expects($this->once()) @@ -244,40 +248,22 @@ public function testRequiredParamAndEmptyPassed() public function testSchemeRequirementDoesNothingIfSameCurrentScheme() { - $routes = $this->getRoutes('test', new Route('/', array(), array('_scheme' => 'http'))); // BC - $this->assertEquals('/app.php/', $this->getGenerator($routes)->generate('test')); - - $routes = $this->getRoutes('test', new Route('/', array(), array('_scheme' => 'https'))); // BC - $this->assertEquals('/app.php/', $this->getGenerator($routes, array('scheme' => 'https'))->generate('test')); - - $routes = $this->getRoutes('test', new Route('/', array(), array(), array(), '', array('http'))); + $routes = $this->getRoutes('test', new Route('/', array(), array('_scheme' => 'http'))); $this->assertEquals('/app.php/', $this->getGenerator($routes)->generate('test')); - $routes = $this->getRoutes('test', new Route('/', array(), array(), array(), '', array('https'))); + $routes = $this->getRoutes('test', new Route('/', array(), array('_scheme' => 'https'))); $this->assertEquals('/app.php/', $this->getGenerator($routes, array('scheme' => 'https'))->generate('test')); } public function testSchemeRequirementForcesAbsoluteUrl() { - $routes = $this->getRoutes('test', new Route('/', array(), array('_scheme' => 'https'))); // BC - $this->assertEquals('https://localhost/app.php/', $this->getGenerator($routes)->generate('test')); - - $routes = $this->getRoutes('test', new Route('/', array(), array('_scheme' => 'http'))); // BC - $this->assertEquals('http://localhost/app.php/', $this->getGenerator($routes, array('scheme' => 'https'))->generate('test')); - - $routes = $this->getRoutes('test', new Route('/', array(), array(), array(), '', array('https'))); + $routes = $this->getRoutes('test', new Route('/', array(), array('_scheme' => 'https'))); $this->assertEquals('https://localhost/app.php/', $this->getGenerator($routes)->generate('test')); - $routes = $this->getRoutes('test', new Route('/', array(), array(), array(), '', array('http'))); + $routes = $this->getRoutes('test', new Route('/', array(), array('_scheme' => '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')); @@ -461,27 +447,9 @@ public function testUrlWithInvalidParameterInHostInNonStrictMode() $this->assertNull($generator->generate('test', array('foo' => 'baz'), false)); } - public function testGenerateNetworkPathBC() - { - $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'))); + $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' @@ -503,8 +471,7 @@ public function testGenerateRelativePath() $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('schemeBC', new Route('/{author}', array(), array('_scheme' => 'https'))); // BC - $routes->add('scheme', new Route('/{author}/blog', array(), array(), array(), '', array('https'))); + $routes->add('scheme', new Route('/{author}', array(), array('_scheme' => 'https'))); $routes->add('unrelated', new Route('/about')); $generator = $this->getGenerator($routes, array('host' => 'example.com', 'pathInfo' => '/fabien/symfony-is-great/')); @@ -524,12 +491,9 @@ public function testGenerateRelativePath() $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', $generator->generate('schemeBC', + $this->assertSame('https://example.com/app.php/bernhard', $generator->generate('scheme', array('author' =>'bernhard'), 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) ); diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/AbstractAnnotationLoaderTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/AbstractAnnotationLoaderTest.php index 288bf64ffaf78d07d6352adc84387ec24c57dcf4..c927ae4a85fee4ae21b79cdd2ddd114de01b5bbd 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/AbstractAnnotationLoaderTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/AbstractAnnotationLoaderTest.php @@ -13,6 +13,13 @@ abstract class AbstractAnnotationLoaderTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Doctrine\\Common\\Version')) { + $this->markTestSkipped('Doctrine is not available.'); + } + } + public function getReader() { return $this->getMockBuilder('Doctrine\Common\Annotations\Reader') diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/AnnotationClassLoaderTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/AnnotationClassLoaderTest.php index c60997902e0ef6f7d9f929e061f6037b21c21c8d..31c43f58c69b801df636d0891b95d8bb76a242d6 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/AnnotationClassLoaderTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/AnnotationClassLoaderTest.php @@ -11,8 +11,6 @@ namespace Symfony\Component\Routing\Tests\Loader; -use Symfony\Component\Routing\Annotation\Route; - class AnnotationClassLoaderTest extends AbstractAnnotationLoaderTest { protected $loader; @@ -73,22 +71,12 @@ public function getLoadTests() return array( array( 'Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass', - array('name' => 'route1'), - array('arg2' => 'defaultValue2', 'arg3' => 'defaultValue3') - ), - array( - 'Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass', - array('name' => 'route1', 'defaults' => array('arg2' => 'foo')), - array('arg2' => 'defaultValue2', 'arg3' => 'defaultValue3') - ), - array( - 'Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass', - array('name' => 'route1', 'defaults' => array('arg2' => 'foobar')), + array('name'=>'route1'), array('arg2' => 'defaultValue2', 'arg3' =>'defaultValue3') ), array( 'Symfony\Component\Routing\Tests\Fixtures\AnnotatedClasses\BarClass', - array('name' => 'route1', 'defaults' => array('arg2' => 'foo'), 'condition' => 'context.getMethod() == "GET"'), + array('name'=>'route1', 'defaults' => array('arg2' => 'foo')), array('arg2' => 'defaultValue2', 'arg3' =>'defaultValue3') ), ); @@ -107,7 +95,6 @@ public function testLoad($className, $routeDatas = array(), $methodArgs = array( 'defaults' => array(), 'schemes' => array(), 'methods' => array(), - 'condition' => null, ), $routeDatas); $this->reader @@ -121,12 +108,12 @@ public function testLoad($className, $routeDatas = array(), $methodArgs = array( $this->assertSame($routeDatas['path'], $route->getPath(), '->load preserves path annotation'); $this->assertSame($routeDatas['requirements'],$route->getRequirements(), '->load preserves requirements annotation'); $this->assertCount(0, array_intersect($route->getOptions(), $routeDatas['options']), '->load preserves options annotation'); - $this->assertSame(array_replace($methodArgs, $routeDatas['defaults']), $route->getDefaults(), '->load preserves defaults annotation'); - $this->assertEquals($routeDatas['condition'], $route->getCondition(), '->load preserves condition annotation'); + $this->assertSame(array_replace($routeDatas['defaults'], $methodArgs), $route->getDefaults(), '->load preserves defaults annotation'); } private function getAnnotatedRoute($datas) { - return new Route($datas); + return new \Symfony\Component\Routing\Annotation\Route($datas); } + } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/ClosureLoaderTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/ClosureLoaderTest.php index d34fa87ec533112b036722e3e3bc96b35e58e7bb..64d1b086ef692a49fcee25ed09149ea3d5954cef 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/ClosureLoaderTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/ClosureLoaderTest.php @@ -17,6 +17,13 @@ class ClosureLoaderTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\Config\FileLocator')) { + $this->markTestSkipped('The "Config" component is not available'); + } + } + public function testSupports() { $loader = new ClosureLoader(); diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/PhpFileLoaderTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/PhpFileLoaderTest.php index bf76d3465b9aee290a11238bb08d0959db2060b5..18b166fc558cb549989a5609a1e8c1e863791803 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/PhpFileLoaderTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/PhpFileLoaderTest.php @@ -16,6 +16,13 @@ class PhpFileLoaderTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\Config\FileLocator')) { + $this->markTestSkipped('The "Config" component is not available'); + } + } + public function testSupports() { $loader = new PhpFileLoader($this->getMock('Symfony\Component\Config\FileLocator')); diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/XmlFileLoaderTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/XmlFileLoaderTest.php index c38adbd93838f3c5bb1cccc955e72eba16684ab2..9f038c1611a7c74152f8edd1f3d0295f807b88e1 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/XmlFileLoaderTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/XmlFileLoaderTest.php @@ -17,6 +17,13 @@ class XmlFileLoaderTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\Config\FileLocator')) { + $this->markTestSkipped('The "Config" component is not available'); + } + } + public function testSupports() { $loader = new XmlFileLoader($this->getMock('Symfony\Component\Config\FileLocator')); @@ -45,7 +52,6 @@ public function testLoadWithRoute() $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()); } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/YamlFileLoaderTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/YamlFileLoaderTest.php index f0301062055e8b1f150e500b252d0bd8ea201fa3..a3e934cef02bf61b91e02328f6597bcbf08f3ba0 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/YamlFileLoaderTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Loader/YamlFileLoaderTest.php @@ -17,6 +17,17 @@ class YamlFileLoaderTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\Config\FileLocator')) { + $this->markTestSkipped('The "Config" component is not available'); + } + + if (!class_exists('Symfony\Component\Yaml\Yaml')) { + $this->markTestSkipped('The "Yaml" component is not available'); + } + } + public function testSupports() { $loader = new YamlFileLoader($this->getMock('Symfony\Component\Config\FileLocator')); @@ -79,7 +90,6 @@ public function testLoadWithRoute() $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()); } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperCollectionTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperCollectionTest.php index 7b6001c1f6d95970588cd26492222629c329b7bd..54b377272d25e46e676dbe305b6317652bcb983b 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperCollectionTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperCollectionTest.php @@ -9,7 +9,7 @@ * file that was distributed with this source code. */ -namespace Symfony\Component\Routing\Tests\Matcher\Dumper; +namespace Symfony\Component\Routing\Test\Matcher\Dumper; use Symfony\Component\Routing\Matcher\Dumper\DumperCollection; diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php index de01a75d0b1b1b4199ccbcd9876538101147bf00..7b4565c40375d839229376ebb10691fef36063ef 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php @@ -20,7 +20,7 @@ class DumperPrefixCollectionTest extends \PHPUnit_Framework_TestCase { public function testAddPrefixRoute() { - $coll = new DumperPrefixCollection(); + $coll = new DumperPrefixCollection; $coll->setPrefix(''); $route = new DumperRoute('bar', new Route('/foo/bar')); @@ -66,7 +66,7 @@ public function testAddPrefixRoute() public function testMergeSlashNodes() { - $coll = new DumperPrefixCollection(); + $coll = new DumperPrefixCollection; $coll->setPrefix(''); $route = new DumperRoute('bar', new Route('/foo/bar')); diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php index 473af6aa5cea39791d799f9fadec3df0a4855e09..542ede85c0017e33c5eb608bc6ad0a28c6efc564 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php @@ -251,9 +251,6 @@ public function getRouteCollections() $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()), diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/RedirectableUrlMatcherTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/RedirectableUrlMatcherTest.php index 5cbb605479117f15365da6da61efba7f97a30e38..2ad4fc8725a823f6ee4effbf1e996673f86d9b60 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/RedirectableUrlMatcherTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/RedirectableUrlMatcherTest.php @@ -41,7 +41,7 @@ public function testRedirectWhenNoSlashForNonSafeMethod() $matcher->match('/foo'); } - public function testSchemeRedirectBC() + public function testSchemeRedirect() { $coll = new RouteCollection(); $coll->add('foo', new Route('/foo', array(), array('_scheme' => 'https'))); @@ -55,32 +55,4 @@ public function testSchemeRedirectBC() ; $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/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/TraceableUrlMatcherTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/TraceableUrlMatcherTest.php index 969ab0a2f0d0037c9c6e694728afd37e74b6b523..86d8d954c008e28b9fe6b3911771401d5517f9fe 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/TraceableUrlMatcherTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/TraceableUrlMatcherTest.php @@ -26,14 +26,13 @@ public function test() $coll->add('bar1', new Route('/bar/{name}', array(), array('id' => '\w+', '_method' => '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->assertEquals(array(0, 0, 0, 0, 0, 0), $this->getLevels($traces)); + $this->assertEquals(array(0, 0, 0, 0, 0), $this->getLevels($traces)); $traces = $matcher->getTraces('/foo'); $this->assertEquals(array(1, 0, 0, 2), $this->getLevels($traces)); @@ -42,7 +41,7 @@ public function test() $this->assertEquals(array(0, 2), $this->getLevels($traces)); $traces = $matcher->getTraces('/bar/dd'); - $this->assertEquals(array(0, 1, 1, 0, 0, 0), $this->getLevels($traces)); + $this->assertEquals(array(0, 1, 1, 0, 0), $this->getLevels($traces)); $traces = $matcher->getTraces('/foo1'); $this->assertEquals(array(0, 0, 0, 0, 2), $this->getLevels($traces)); @@ -53,40 +52,6 @@ public function test() $traces = $matcher->getTraces('/bar/dd'); $this->assertEquals(array(0, 1, 2), $this->getLevels($traces)); - - $traces = $matcher->getTraces('/foo2'); - $this->assertEquals(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->assertEquals( - array(TraceableUrlMatcher::ROUTE_ALMOST_MATCHES, TraceableUrlMatcher::ROUTE_ALMOST_MATCHES), - $this->getLevels($traces) - ); } public function getLevels($traces) diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/UrlMatcherTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/UrlMatcherTest.php index b03b0c3aa077a3f8f4b4b9d162b6de6358004bb2..8a1428f170859f1581b43b7d7276e31a906e3d00 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/UrlMatcherTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/UrlMatcherTest.php @@ -310,36 +310,13 @@ public function testDefaultRequirementOfVariableDisallowsNextSeparator() $matcher->match('/do.t.html'); } - /** - * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException - */ - public function testSchemeRequirementBC() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo', array(), array('_scheme' => 'https'))); - $matcher = new UrlMatcher($coll, new RequestContext()); - $matcher->match('/foo'); - } /** * @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); + $coll->add('foo', new Route('/foo', array(), array('_scheme' => 'https'))); $matcher = new UrlMatcher($coll, new RequestContext()); $matcher->match('/foo'); } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RequestContextTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RequestContextTest.php deleted file mode 100644 index 21a299956f8e520b12a36bf695ac28d50d8c777a..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RequestContextTest.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; - -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')); - } -} diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouteCollectionTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouteCollectionTest.php index 4c12ed56df3ea17fc82b9b1cfe2f8afe14a50c60..3d78adf9232b6576c842bcfa3b5955fc4e024a74 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouteCollectionTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouteCollectionTest.php @@ -103,6 +103,10 @@ public function testAddCollection() public function testAddCollectionWithResources() { + if (!class_exists('Symfony\Component\Config\Resource\FileResource')) { + $this->markTestSkipped('The "Config" component is not available'); + } + $collection = new RouteCollection(); $collection->addResource($foo = new FileResource(__DIR__.'/Fixtures/foo.xml')); $collection1 = new RouteCollection(); @@ -174,6 +178,10 @@ public function testAddPrefixOverridesDefaultsAndRequirements() public function testResource() { + if (!class_exists('Symfony\Component\Config\Resource\FileResource')) { + $this->markTestSkipped('The "Config" component is not available'); + } + $collection = new RouteCollection(); $collection->addResource($foo = new FileResource(__DIR__.'/Fixtures/foo.xml')); $collection->addResource($bar = new FileResource(__DIR__.'/Fixtures/bar.xml')); @@ -244,61 +252,4 @@ public function testSetHost() $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/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouteTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouteTest.php index cbd5ccb43b3f785feecfbeebd685f50ab783a63b..31f1066feda1e7d57403b82029f519ed0df05169 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouteTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouteTest.php @@ -24,10 +24,9 @@ public function testConstructor() $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"'); + $route = new Route('/', array(), array(), array(), '', array('Https'), array('POST', 'put')); $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'); @@ -45,7 +44,7 @@ public function testPath() $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'); + $this->assertEquals('/path', $route->getPath(), '->setPath() does not allow two slahes "//" 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() @@ -63,15 +62,6 @@ public function testOptions() $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}'); @@ -84,7 +74,7 @@ public function testDefaults() $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'); + $this->assertNull($route->getDefault('not_defined'), '->getDefault() return null if default value is not setted'); $route->setDefault('_controller', $closure = function () { return 'Hello'; }); $this->assertEquals($closure, $route->getDefault('_controller'), '->setDefault() sets a default value'); @@ -115,10 +105,8 @@ public function testRequirements() 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'); } /** @@ -153,15 +141,10 @@ 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')); } public function testSchemeIsBC() @@ -170,9 +153,6 @@ public function testSchemeIsBC() $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()); @@ -201,14 +181,6 @@ public function testMethodIsBC() $this->assertNull($route->getRequirement('_method')); } - public function testCondition() - { - $route = new Route('/'); - $this->assertEquals(null, $route->getCondition()); - $route->setCondition('context.getMethod() == "GET"'); - $this->assertEquals('context.getMethod() == "GET"', $route->getCondition()); - } - public function testCompile() { $route = new Route('/{foo}'); @@ -217,24 +189,4 @@ public function testCompile() $route->setRequirement('foo', '.*'); $this->assertNotSame($compiled, $route->compile(), '->compile() recompiles if the route was modified'); } - - public function testPattern() - { - $route = new Route('/{foo}'); - $this->assertEquals('/{foo}', $route->getPattern()); - - $route->setPattern('/bar'); - $this->assertEquals('/bar', $route->getPattern()); - } - - public function testSerialize() - { - $route = new Route('/{foo}', array('foo' => 'default'), array('foo' => '\d+')); - - $serialized = serialize($route); - $unserialized = unserialize($serialized); - - $this->assertEquals($route, $unserialized); - $this->assertNotSame($route, $unserialized); - } } diff --git a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouterTest.php b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouterTest.php index 42a344c74a73b353a7a9a1e3d1b8a2fcdef9b93a..a3c336e5b775e6978d5990d485df9789ced8689b 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouterTest.php +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/Tests/RouterTest.php @@ -12,7 +12,6 @@ namespace Symfony\Component\Routing\Tests; use Symfony\Component\Routing\Router; -use Symfony\Component\HttpFoundation\Request; class RouterTest extends \PHPUnit_Framework_TestCase { @@ -136,28 +135,4 @@ public function provideGeneratorOptionsPreventingCaching() 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/core/vendor/symfony/routing/Symfony/Component/Routing/composer.json b/core/vendor/symfony/routing/Symfony/Component/Routing/composer.json index 3517b23624045b9fecf30a6a986924d58af8ce5d..9a737c6b0287b736f85f2ff5af4ad19942460e5a 100644 --- a/core/vendor/symfony/routing/Symfony/Component/Routing/composer.json +++ b/core/vendor/symfony/routing/Symfony/Component/Routing/composer.json @@ -2,7 +2,7 @@ "name": "symfony/routing", "type": "library", "description": "Symfony Routing Component", - "keywords": ["routing", "router", "URL", "URI"], + "keywords": [], "homepage": "http://symfony.com", "license": "MIT", "authors": [ @@ -21,15 +21,13 @@ "require-dev": { "symfony/config": "~2.2", "symfony/yaml": "~2.0", - "symfony/expression-language": "~2.4", - "doctrine/annotations": "~1.0", + "doctrine/common": "~2.2", "psr/log": "~1.0" }, "suggest": { - "symfony/config": "For using the all-in-one router or any loader", - "symfony/yaml": "For using the YAML loader", - "symfony/expression-language": "For using expression matching", - "doctrine/annotations": "For using the annotation loader" + "symfony/config": "", + "symfony/yaml": "", + "doctrine/common": "" }, "autoload": { "psr-0": { "Symfony\\Component\\Routing\\": "" } @@ -38,7 +36,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } } } diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/CHANGELOG.md b/core/vendor/symfony/serializer/Symfony/Component/Serializer/CHANGELOG.md index 5b859623fef09e891f4dd2bd8ca84e363f89f2ef..5a332da390bb5b0c370edbd9c0ba7bdb72eb77d1 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/CHANGELOG.md +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/CHANGELOG.md @@ -1,11 +1,6 @@ CHANGELOG ========= -2.4.0 ------ - - * added `$context` support for XMLEncoder. - 2.3.0 ----- diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/ChainDecoder.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/ChainDecoder.php index 5321a234057ecabb33cd7847927f6c5e23790461..6ece3b2205b9cae65df49dac4a94ea3938661174 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/ChainDecoder.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/ChainDecoder.php @@ -11,6 +11,7 @@ namespace Symfony\Component\Serializer\Encoder; +use Symfony\Component\Serializer\Encoder\DecoderInterface; use Symfony\Component\Serializer\Exception\RuntimeException; /** diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/ChainEncoder.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/ChainEncoder.php index 088420b11820c5ab0d998f548a2667eed794503d..bd10a2ad412a265a4b370f892927773ce6f6f4a4 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/ChainEncoder.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/ChainEncoder.php @@ -11,6 +11,8 @@ namespace Symfony\Component\Serializer\Encoder; +use Symfony\Component\Serializer\Encoder\EncoderInterface; +use Symfony\Component\Serializer\Encoder\NormalizationAwareInterface; use Symfony\Component\Serializer\Exception\RuntimeException; /** diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/JsonDecode.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/JsonDecode.php index f8dfab35a889422dac0c8bffab457ba25879bb2b..d616286aef40c3c55ec11694d0420273838b80c1 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/JsonDecode.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/JsonDecode.php @@ -70,7 +70,7 @@ public function getLastError() * * json_decode_associative: boolean * If true, returns the object as associative array. - * If false, returns the object as nested stdClass + * If false, returns the object as nested StdClass * If not specified, this method will use the default set in JsonDecode::__construct * * json_decode_recursion_depth: integer diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/JsonEncoder.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/JsonEncoder.php index 95dae7c8c6674efdc1aeffcfd0d28302ded10888..02b179bc91a66a904dbc18a372e42505a883fcbf 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/JsonEncoder.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/JsonEncoder.php @@ -32,8 +32,8 @@ class JsonEncoder implements EncoderInterface, DecoderInterface public function __construct(JsonEncode $encodingImpl = null, JsonDecode $decodingImpl = null) { - $this->encodingImpl = $encodingImpl ?: new JsonEncode(); - $this->decodingImpl = $decodingImpl ?: new JsonDecode(true); + $this->encodingImpl = null === $encodingImpl ? new JsonEncode() : $encodingImpl; + $this->decodingImpl = null === $decodingImpl ? new JsonDecode(true) : $decodingImpl; } /** diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/XmlEncoder.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/XmlEncoder.php index 9cd2417b468b231a8ebff70f98d0d63f653a0eb4..137f2fc3272d49b27ff9893983685d287add8ca1 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/XmlEncoder.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Encoder/XmlEncoder.php @@ -24,7 +24,6 @@ class XmlEncoder extends SerializerAwareEncoder implements EncoderInterface, Dec { private $dom; private $format; - private $context; private $rootNodeName = 'response'; /** @@ -48,9 +47,8 @@ public function encode($data, $format, array $context = array()) $xmlRootNodeName = $this->resolveXmlRootName($context); - $this->dom = $this->createDomDocument($context); + $this->dom = new \DOMDocument(); $this->format = $format; - $this->context = $context; if (null !== $data && !is_scalar($data)) { $root = $this->dom->createElement($xmlRootNodeName); @@ -78,10 +76,6 @@ public function decode($data, $format, array $context = array()) libxml_use_internal_errors($internalErrors); libxml_disable_entity_loader($disableEntities); - if ($error = libxml_get_last_error()) { - throw new UnexpectedValueException($error->message); - } - foreach ($dom->childNodes as $child) { if ($child->nodeType === XML_DOCUMENT_TYPE_NODE) { throw new UnexpectedValueException('Document types are not allowed.'); @@ -111,16 +105,24 @@ public function decode($data, $format, array $context = array()) } /** - * {@inheritdoc} - */ + * Checks whether the serializer can encode to given format + * + * @param string $format format name + * + * @return Boolean + */ public function supportsEncoding($format) { return 'xml' === $format; } /** - * {@inheritdoc} - */ + * Checks whether the serializer can decode from given format + * + * @param string $format format name + * + * @return Boolean + */ public function supportsDecoding($format) { return 'xml' === $format; @@ -146,12 +148,12 @@ public function getRootNodeName() } /** - * @param \DOMNode $node - * @param string $val + * @param DOMNode $node + * @param string $val * * @return Boolean */ - final protected function appendXMLString(\DOMNode $node, $val) + final protected function appendXMLString($node, $val) { if (strlen($val) > 0) { $frag = $this->dom->createDocumentFragment(); @@ -165,12 +167,12 @@ final protected function appendXMLString(\DOMNode $node, $val) } /** - * @param \DOMNode $node - * @param string $val + * @param DOMNode $node + * @param string $val * * @return Boolean */ - final protected function appendText(\DOMNode $node, $val) + final protected function appendText($node, $val) { $nodeText = $this->dom->createTextNode($val); $node->appendChild($nodeText); @@ -179,12 +181,12 @@ final protected function appendText(\DOMNode $node, $val) } /** - * @param \DOMNode $node - * @param string $val + * @param DOMNode $node + * @param string $val * * @return Boolean */ - final protected function appendCData(\DOMNode $node, $val) + final protected function appendCData($node, $val) { $nodeText = $this->dom->createCDATASection($val); $node->appendChild($nodeText); @@ -193,12 +195,12 @@ final protected function appendCData(\DOMNode $node, $val) } /** - * @param \DOMNode $node - * @param \DOMDocumentFragment $fragment + * @param DOMNode $node + * @param DOMDocumentFragment $fragment * * @return Boolean */ - final protected function appendDocumentFragment(\DOMNode $node, $fragment) + final protected function appendDocumentFragment($node, $fragment) { if ($fragment instanceof \DOMDocumentFragment) { $node->appendChild($fragment); @@ -226,11 +228,11 @@ final protected function isElementNameValid($name) /** * Parse the input SimpleXmlElement into an array. * - * @param \SimpleXmlElement $node xml to parse + * @param SimpleXmlElement $node xml to parse * * @return array */ - private function parseXml(\SimpleXmlElement $node) + private function parseXml($node) { $data = array(); if ($node->attributes()) { @@ -254,9 +256,9 @@ private function parseXml(\SimpleXmlElement $node) if ($key === 'item') { if (isset($value['@key'])) { if (isset($value['#'])) { - $data[$value['@key']] = $value['#']; + $data[(string) $value['@key']] = $value['#']; } else { - $data[$value['@key']] = $value; + $data[(string) $value['@key']] = $value; } } else { $data['item'][] = $value; @@ -277,15 +279,15 @@ private function parseXml(\SimpleXmlElement $node) /** * Parse the data and convert it to DOMElements * - * @param \DOMNode $parentNode - * @param array|object $data - * @param string|null $xmlRootNodeName + * @param DOMNode $parentNode + * @param array|object $data data + * @param string $xmlRootNodeName * * @return Boolean * * @throws UnexpectedValueException */ - private function buildXml(\DOMNode $parentNode, $data, $xmlRootNodeName = null) + private function buildXml($parentNode, $data, $xmlRootNodeName = null) { $append = true; @@ -323,7 +325,7 @@ private function buildXml(\DOMNode $parentNode, $data, $xmlRootNodeName = null) } if (is_object($data)) { - $data = $this->serializer->normalize($data, $this->format, $this->context); + $data = $this->serializer->normalize($data, $this->format); if (null !== $data && !is_scalar($data)) { return $this->buildXml($parentNode, $data, $xmlRootNodeName); } @@ -345,14 +347,14 @@ private function buildXml(\DOMNode $parentNode, $data, $xmlRootNodeName = null) /** * Selects the type of node to create and appends it to the parent. * - * @param \DOMNode $parentNode + * @param DOMNode $parentNode * @param array|object $data * @param string $nodeName * @param string $key * * @return Boolean */ - private function appendNode(\DOMNode $parentNode, $data, $nodeName, $key = null) + private function appendNode($parentNode, $data, $nodeName, $key = null) { $node = $this->dom->createElement($nodeName); if (null !== $key) { @@ -382,12 +384,12 @@ private function needsCdataWrapping($val) /** * Tests the value being passed and decide what sort of element to create * - * @param \DOMNode $node - * @param mixed $val + * @param DOMNode $node + * @param mixed $val * * @return Boolean */ - private function selectNodeType(\DOMNode $node, $val) + private function selectNodeType($node, $val) { if (is_array($val)) { return $this->buildXml($node, $val); @@ -397,7 +399,7 @@ private function selectNodeType(\DOMNode $node, $val) } elseif ($val instanceof \Traversable) { $this->buildXml($node, $val); } elseif (is_object($val)) { - return $this->buildXml($node, $this->serializer->normalize($val, $this->format, $this->context)); + return $this->buildXml($node, $this->serializer->normalize($val, $this->format)); } elseif (is_numeric($val)) { return $this->appendText($node, (string) $val); } elseif (is_string($val) && $this->needsCdataWrapping($val)) { @@ -424,32 +426,4 @@ private function resolveXmlRootName(array $context = array()) : $this->rootNodeName; } - /** - * Create a DOM document, taking serializer options into account. - * - * @param array $context options that the encoder has access to. - * - * @return \DOMDocument - */ - private function createDomDocument(array $context) - { - $document = new \DOMDocument(); - - // Set an attribute on the DOM document specifying, as part of the XML declaration, - $xmlOptions = array( - // the version number of the document - 'xml_version' => 'xmlVersion', - // the encoding of the document - 'xml_encoding' => 'encoding', - // whether the document is standalone - 'xml_standalone' => 'xmlStandalone', - ); - foreach ($xmlOptions as $xmlOption => $documentProperty) { - if (isset($context[$xmlOption])) { - $document->$documentProperty = $context[$xmlOption]; - } - } - - return $document; - } } diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Normalizer/GetSetMethodNormalizer.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Normalizer/GetSetMethodNormalizer.php index 1b1a5f56887491e9e374604587bc4c3bb14f21f9..54854c6cf499e2f6f6ead368a18d9a936c795c36 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Normalizer/GetSetMethodNormalizer.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Normalizer/GetSetMethodNormalizer.php @@ -41,9 +41,9 @@ class GetSetMethodNormalizer extends SerializerAwareNormalizer implements Normal protected $camelizedAttributes = array(); /** - * Set normalization callbacks. + * Set normalization callbacks * - * @param callable[] $callbacks help normalize the result + * @param array $callbacks help normalize the result * * @throws InvalidArgumentException if a non-callable callback is set */ diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/README.md b/core/vendor/symfony/serializer/Symfony/Component/Serializer/README.md index 5a1606ca09c10899c8bfa8fc512465743eb3bb08..3e808059db4df7ada06b5550d3cccb6739f1142c 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/README.md +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/README.md @@ -11,5 +11,5 @@ Resources You can run the unit tests with the following command: $ cd path/to/Symfony/Component/Serializer/ - $ composer.phar install + $ composer.phar install --dev $ phpunit diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/SerializerAwareInterface.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/SerializerAwareInterface.php index ad0b768ccc8a2cdedf1c76358d78ffd9f1912e1b..dd0bb60d1aa84ea78028b70198bba1e5f3d837cb 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/SerializerAwareInterface.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/SerializerAwareInterface.php @@ -11,6 +11,8 @@ namespace Symfony\Component\Serializer; +use Symfony\Component\Serializer\SerializerInterface; + /** * Defines the interface of encoders * diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Encoder/JsonEncoderTest.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Encoder/JsonEncoderTest.php index 00714f23ba2a90eafcf1331ea384b9a12df3619b..b5ec1a2352235fbae6b45371db23e1a05f5ef9f5 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Encoder/JsonEncoderTest.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Encoder/JsonEncoderTest.php @@ -19,7 +19,7 @@ class JsonEncoderTest extends \PHPUnit_Framework_TestCase { protected function setUp() { - $this->encoder = new JsonEncoder(); + $this->encoder = new JsonEncoder; $this->serializer = new Serializer(array(new CustomNormalizer()), array('json' => new JsonEncoder())); } diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Encoder/XmlEncoderTest.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Encoder/XmlEncoderTest.php index 6ad2a6c2e2561f0573fa75db828cb333deb3d3b8..b23d4c79390977d29ece3017299e02f9369a8644 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Encoder/XmlEncoderTest.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Encoder/XmlEncoderTest.php @@ -20,18 +20,16 @@ class XmlEncoderTest extends \PHPUnit_Framework_TestCase { - private $encoder; - protected function setUp() { - $this->encoder = new XmlEncoder(); + $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 = new ScalarDummy; $obj->xmlFoo = "foo"; $expected = '<?xml version="1.0"?>'."\n". @@ -42,7 +40,7 @@ public function testEncodeScalar() public function testSetRootNodeName() { - $obj = new ScalarDummy(); + $obj = new ScalarDummy; $obj->xmlFoo = "foo"; $this->encoder->setRootNodeName('test'); @@ -53,7 +51,7 @@ public function testSetRootNodeName() } /** - * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException + * @expectedException UnexpectedValueException * @expectedExceptionMessage Document types are not allowed. */ public function testDocTypeIsNotAllowed() @@ -63,7 +61,7 @@ public function testDocTypeIsNotAllowed() public function testAttributes() { - $obj = new ScalarDummy(); + $obj = new ScalarDummy; $obj->xmlFoo = array( 'foo-bar' => array( '@id' => 1, @@ -92,7 +90,7 @@ public function testAttributes() public function testElementNameValid() { - $obj = new ScalarDummy(); + $obj = new ScalarDummy; $obj->xmlFoo = array( 'foo-bar' => 'a', 'foo_bar' => 'a', @@ -120,23 +118,6 @@ public function testEncodeSimpleXML() $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 testEncodeScalarRootAttributes() { $array = array( @@ -206,7 +187,7 @@ public function testEncode() public function testEncodeSerializerXmlRootNodeNameOption() { $options = array('xml_root_node_name' => 'test'); - $this->encoder = new XmlEncoder(); + $this->encoder = new XmlEncoder; $serializer = new Serializer(array(), array('xml' => new XmlEncoder())); $this->encoder->setSerializer($serializer); @@ -289,7 +270,7 @@ public function testDecodeArray() public function testDecodeWithoutItemHash() { - $obj = new ScalarDummy(); + $obj = new ScalarDummy; $obj->xmlFoo = array( 'foo-bar' => array( '@key' => "value", @@ -320,14 +301,6 @@ public function testDecodeWithoutItemHash() $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(); @@ -362,7 +335,7 @@ protected function getXmlSource() protected function getObject() { - $obj = new Dummy(); + $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))); diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Normalizer/CustomNormalizerTest.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Normalizer/CustomNormalizerTest.php index eef163442edacba9e67806674b06b49fe5437851..7b4b4ae28d85f9620d4e7faef44c5dff138a41bf 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Normalizer/CustomNormalizerTest.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Normalizer/CustomNormalizerTest.php @@ -19,13 +19,13 @@ class CustomNormalizerTest extends \PHPUnit_Framework_TestCase { protected function setUp() { - $this->normalizer = new CustomNormalizer(); - $this->normalizer->setSerializer(new Serializer()); + $this->normalizer = new CustomNormalizer; + $this->normalizer->setSerializer(new Serializer); } public function testSerialize() { - $obj = new ScalarDummy(); + $obj = new ScalarDummy; $obj->foo = 'foo'; $obj->xmlFoo = 'xml'; $this->assertEquals('foo', $this->normalizer->normalize($obj, 'json')); @@ -34,18 +34,18 @@ public function testSerialize() public function testDeserialize() { - $obj = $this->normalizer->denormalize('foo', get_class(new ScalarDummy()), 'xml'); + $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'); + $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->assertTrue($this->normalizer->supportsNormalization(new ScalarDummy)); $this->assertFalse($this->normalizer->supportsNormalization(new \stdClass)); } diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php index f3bf9694d206c0e0d2a2e627d44b94f5e0d3002d..42846166e453b1b79ff4178506ae4983009f866c 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php @@ -17,13 +17,13 @@ class GetSetMethodNormalizerTest extends \PHPUnit_Framework_TestCase { protected function setUp() { - $this->normalizer = new GetSetMethodNormalizer(); + $this->normalizer = new GetSetMethodNormalizer; $this->normalizer->setSerializer($this->getMock('Symfony\Component\Serializer\Serializer')); } public function testNormalize() { - $obj = new GetSetDummy(); + $obj = new GetSetDummy; $obj->setFoo('foo'); $obj->setBar('bar'); $obj->setCamelCase('camelcase'); @@ -118,7 +118,7 @@ public function testIgnoredAttributes() { $this->normalizer->setIgnoredAttributes(array('foo', 'bar', 'camelCase')); - $obj = new GetSetDummy(); + $obj = new GetSetDummy; $obj->setFoo('foo'); $obj->setBar('bar'); diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/SerializerTest.php b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/SerializerTest.php index 106bcff7adb59df082b4fff3195abe79c993822c..3c189461f28f1be22cdf266a5fe494bd75eab780 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/SerializerTest.php +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/Tests/SerializerTest.php @@ -34,14 +34,14 @@ public function testNormalizeNoMatch() public function testNormalizeTraversable() { $this->serializer = new Serializer(array(), array('json' => new JsonEncoder())); - $result = $this->serializer->serialize(new TraversableDummy(), 'json'); + $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->serializer = new Serializer(array(new CustomNormalizer), array('json' => new JsonEncoder())); + $result = $this->serializer->serialize(new NormalizableTraversableDummy, 'json'); $this->assertEquals('{"foo":"normalizedFoo","bar":"normalizedBar"}', $result); } diff --git a/core/vendor/symfony/serializer/Symfony/Component/Serializer/composer.json b/core/vendor/symfony/serializer/Symfony/Component/Serializer/composer.json index 704356623c83027ff0bcb53e954bc3281fdf7b4d..ab537b295527010487de2dd5655d1222bceebc42 100644 --- a/core/vendor/symfony/serializer/Symfony/Component/Serializer/composer.json +++ b/core/vendor/symfony/serializer/Symfony/Component/Serializer/composer.json @@ -25,7 +25,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/CHANGELOG.md b/core/vendor/symfony/validator/Symfony/Component/Validator/CHANGELOG.md index f5ae1ee39092a7ab1b4551005a7722ae98bb6445..7ab8051c1a92ba5bd559e5ec33f338a224d311f5 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/CHANGELOG.md +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/CHANGELOG.md @@ -1,12 +1,6 @@ CHANGELOG ========= -2.4.0 ------ - - * added a constraint the uses the expression language - * added `minRatio`, `maxRatio`, `allowSquare`, `allowLandscape`, and `allowPortrait` to Image validator - 2.3.0 ----- diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraint.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraint.php index 2f3cbdda5ad009c5e1a4ceef5521d6f444410f24..6c568aacd4a76da170b394fecc290a88b6e1072b 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraint.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraint.php @@ -87,9 +87,8 @@ public function __construct($options = null) $invalidOptions = array(); $missingOptions = array_flip((array) $this->getRequiredOptions()); - if (is_array($options) && count($options) >= 1 && isset($options['value']) && !property_exists($this, 'value')) { - $options[$this->getDefaultOption()] = $options['value']; - unset($options['value']); + if (is_array($options) && count($options) == 1 && isset($options['value'])) { + $options = $options['value']; } if (is_array($options) && count($options) > 0 && is_string(key($options))) { diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/ConstraintValidatorFactory.php b/core/vendor/symfony/validator/Symfony/Component/Validator/ConstraintValidatorFactory.php index 5cf36eccffc3ac02945238d8eee6805f0852d1bd..88b5cefdc2c7bf0cc5b5bccb64935217c5ba5b7b 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/ConstraintValidatorFactory.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/ConstraintValidatorFactory.php @@ -11,33 +11,20 @@ namespace Symfony\Component\Validator; -use Symfony\Component\PropertyAccess\PropertyAccess; -use Symfony\Component\PropertyAccess\PropertyAccessorInterface; -use Symfony\Component\Validator\Constraints\ExpressionValidator; +use Symfony\Component\Validator\ConstraintValidatorFactoryInterface; +use Symfony\Component\Validator\Constraint; /** * Default implementation of the ConstraintValidatorFactoryInterface. * * This enforces the convention that the validatedBy() method on any - * Constraint will return the class name of the ConstraintValidator that + * Constrain will return the class name of the ConstraintValidator that * should validate the Constraint. - * - * @author Bernhard Schussek <bschussek@gmail.com> */ class ConstraintValidatorFactory implements ConstraintValidatorFactoryInterface { protected $validators = array(); - /** - * @var PropertyAccessorInterface - */ - private $propertyAccessor; - - public function __construct(PropertyAccessorInterface $propertyAccessor = null) - { - $this->propertyAccessor = $propertyAccessor ?: PropertyAccess::createPropertyAccessor(); - } - /** * {@inheritDoc} */ @@ -45,19 +32,8 @@ public function getInstance(Constraint $constraint) { $className = $constraint->validatedBy(); - // The second condition is a hack that is needed when CollectionValidator - // calls itself recursively (Collection constraints can be nested). - // Since the context of the validator is overwritten when initialize() - // is called for the nested constraint, the outer validator is - // acting on the wrong context when the nested validation terminates. - // - // A better solution - which should be approached in Symfony 3.0 - is to - // remove the initialize() method and pass the context as last argument - // to validate() instead. - if (!isset($this->validators[$className]) || 'Symfony\Component\Validator\Constraints\CollectionValidator' === $className) { - $this->validators[$className] = 'validator.expression' === $className - ? new ExpressionValidator($this->propertyAccessor) - : new $className(); + if (!isset($this->validators[$className]) || $className === 'Symfony\Component\Validator\Constraints\CollectionValidator') { + $this->validators[$className] = new $className(); } return $this->validators[$className]; diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/ConstraintValidatorFactoryInterface.php b/core/vendor/symfony/validator/Symfony/Component/Validator/ConstraintValidatorFactoryInterface.php index 5e216275b493382d0df0bb04d60625bbb26cdcce..584f980367c63f8377fffefbfcd09e2765c23c4a 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/ConstraintValidatorFactoryInterface.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/ConstraintValidatorFactoryInterface.php @@ -11,9 +11,11 @@ namespace Symfony\Component\Validator; +use Symfony\Component\Validator\Constraint; + /** * Specifies an object able to return the correct ConstraintValidatorInterface - * instance given a Constraint object. + * instance given a Constrain object. */ interface ConstraintValidatorFactoryInterface { diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/AbstractComparisonValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/AbstractComparisonValidator.php index f6b919331fae7019dadf79bce936fa371062556a..6b76fc80b2a215a7018a7fd7b7d3c92411c38159 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/AbstractComparisonValidator.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/AbstractComparisonValidator.php @@ -60,10 +60,6 @@ private function valueToType($value) */ private function valueToString($value) { - if (is_object($value) && method_exists($value, '__toString')) { - return (string) $value; - } - if ($value instanceof \DateTime) { return $value->format('Y-m-d H:i:s'); } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Callback.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Callback.php index 01aeb6ddb79828db593cf09433949214451029c7..e93efa4b9914578487e35b7d6a445628e34e1950 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Callback.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Callback.php @@ -22,52 +22,26 @@ */ class Callback extends Constraint { - /** - * @var string|callable - * - * @since 2.4 - */ - public $callback; - - /** - * @var array - * - * @deprecated Deprecated since version 2.4, to be removed in Symfony 3.0. - */ public $methods; /** - * {@inheritdoc} + * {@inheritDoc} */ - public function __construct($options = null) + public function getRequiredOptions() { - // Invocation through annotations with an array parameter only - if (is_array($options) && 1 === count($options) && isset($options['value'])) { - $options = $options['value']; - } - - if (is_array($options) && !isset($options['callback']) && !isset($options['methods']) && !isset($options['groups'])) { - if (is_callable($options)) { - $options = array('callback' => $options); - } else { - // BC with Symfony < 2.4 - $options = array('methods' => $options); - } - } - - parent::__construct($options); + return array('methods'); } /** - * {@inheritdoc} + * {@inheritDoc} */ public function getDefaultOption() { - return 'callback'; + return 'methods'; } /** - * {@inheritdoc} + * {@inheritDoc} */ public function getTargets() { diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/CallbackValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/CallbackValidator.php index 28b34250af6fccb5be862847846363b355eae9e3..ab3c56f98e2c950349f4d70a092d61426325dbae 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/CallbackValidator.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/CallbackValidator.php @@ -34,20 +34,13 @@ public function validate($object, Constraint $constraint) return; } - if (null !== $constraint->callback && null !== $constraint->methods) { - throw new ConstraintDefinitionException( - 'The Callback constraint supports either the option "callback" ' . - 'or "methods", but not both at the same time.' - ); - } - // has to be an array so that we can differentiate between callables // and method names - if (null !== $constraint->methods && !is_array($constraint->methods)) { + if (!is_array($constraint->methods)) { throw new UnexpectedTypeException($constraint->methods, 'array'); } - $methods = $constraint->methods ?: array($constraint->callback); + $methods = $constraint->methods; foreach ($methods as $method) { if (is_array($method) || $method instanceof \Closure) { @@ -61,13 +54,7 @@ public function validate($object, Constraint $constraint) throw new ConstraintDefinitionException(sprintf('Method "%s" targeted by Callback constraint does not exist', $method)); } - $reflMethod = new \ReflectionMethod($object, $method); - - if ($reflMethod->isStatic()) { - $reflMethod->invoke(null, $object, $this->context); - } else { - $reflMethod->invoke($object, $this->context); - } + $object->$method($this->context); } } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Collection.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Collection.php index 78fa5aee9dd5334d8529a36cc48ef5b0829aade7..d60f0c273d13b5a95e856973ac3655161580ed84 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Collection.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Collection.php @@ -12,6 +12,8 @@ namespace Symfony\Component\Validator\Constraints; use Symfony\Component\Validator\Constraint; +use Symfony\Component\Validator\Constraints\Required; +use Symfony\Component\Validator\Constraints\Optional; use Symfony\Component\Validator\Exception\ConstraintDefinitionException; /** @@ -23,7 +25,7 @@ */ class Collection extends Constraint { - public $fields = array(); + public $fields; public $allowExtraFields = false; public $allowMissingFields = false; public $extraFieldsMessage = 'This field was not expected.'; diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/CollectionValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/CollectionValidator.php index f273ac40b95e5c72d18a74ad9915613f183fbfed..f59afe79ee5f321d6afd7f1ec81b450be21a10dc 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/CollectionValidator.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/CollectionValidator.php @@ -14,6 +14,7 @@ use Symfony\Component\Validator\Constraint; use Symfony\Component\Validator\ConstraintValidator; use Symfony\Component\Validator\Exception\UnexpectedTypeException; +use Symfony\Component\Validator\Constraints\Optional; /** * @author Bernhard Schussek <bschussek@gmail.com> diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/EmailValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/EmailValidator.php index e0593102bc599accd8cdd8f3c6eb986d00b22bf0..abe45a87d06fff8f3dc4380a8f3c36a5f9fe2ef5 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/EmailValidator.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/EmailValidator.php @@ -41,6 +41,11 @@ public function validate($value, Constraint $constraint) if ($valid) { $host = substr($value, strpos($value, '@') + 1); + if (version_compare(PHP_VERSION, '5.3.3', '<') && strpos($host, '.') === false) { + // Likely not a FQDN, bug in PHP FILTER_VALIDATE_EMAIL prior to PHP 5.3.3 + $valid = false; + } + // Check for host DNS resource records if ($valid && $constraint->checkMX) { $valid = $this->checkMX($host); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Expression.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Expression.php deleted file mode 100644 index b845a32392b2c751ffbc57ee1b6738208551f982..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Expression.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\Validator\Constraints; - -use Symfony\Component\Validator\Constraint; - -/** - * @Annotation - * - * @author Fabien Potencier <fabien@symfony.com> - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class Expression extends Constraint -{ - public $message = 'This value is not valid.'; - public $expression; - - /** - * {@inheritDoc} - */ - public function getDefaultOption() - { - return 'expression'; - } - - /** - * {@inheritDoc} - */ - public function getRequiredOptions() - { - return array('expression'); - } - - /** - * {@inheritDoc} - */ - public function getTargets() - { - return array(self::CLASS_CONSTRAINT, self::PROPERTY_CONSTRAINT); - } - - /** - * {@inheritDoc} - */ - public function validatedBy() - { - return 'validator.expression'; - } -} diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/ExpressionValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/ExpressionValidator.php deleted file mode 100644 index e27859b08c19c97b3c560e35ab90307477927fa4..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/ExpressionValidator.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\Validator\Constraints; - -use Symfony\Component\PropertyAccess\PropertyAccessorInterface; -use Symfony\Component\PropertyAccess\PropertyPath; -use Symfony\Component\Validator\Constraint; -use Symfony\Component\Validator\ConstraintValidator; -use Symfony\Component\ExpressionLanguage\ExpressionLanguage; -use Symfony\Component\Validator\Exception\RuntimeException; - -/** - * @author Fabien Potencier <fabien@symfony.com> - * @author Bernhard Schussek <bschussek@symfony.com> - */ -class ExpressionValidator extends ConstraintValidator -{ - /** - * @var PropertyAccessorInterface - */ - private $propertyAccessor; - - /** - * @var ExpressionLanguage - */ - private $expressionLanguage; - - public function __construct(PropertyAccessorInterface $propertyAccessor) - { - $this->propertyAccessor = $propertyAccessor; - } - - /** - * {@inheritDoc} - */ - public function validate($value, Constraint $constraint) - { - if (null === $value || '' === $value) { - return; - } - - $variables = array(); - - if (null === $this->context->getPropertyName()) { - $variables['this'] = $value; - } else { - // Extract the object that the property belongs to from the object - // graph - $path = new PropertyPath($this->context->getPropertyPath()); - $parentPath = $path->getParent(); - $root = $this->context->getRoot(); - - $variables['value'] = $value; - $variables['this'] = $parentPath ? $this->propertyAccessor->getValue($root, $parentPath) : $root; - } - - if (!$this->getExpressionLanguage()->evaluate($constraint->expression, $variables)) { - $this->context->addViolation($constraint->message); - } - } - - private function getExpressionLanguage() - { - if (null === $this->expressionLanguage) { - if (!class_exists('Symfony\Component\ExpressionLanguage\ExpressionLanguage')) { - throw new RuntimeException('Unable to use expressions as the Symfony ExpressionLanguage component is not installed.'); - } - $this->expressionLanguage = new ExpressionLanguage(); - } - - return $this->expressionLanguage; - } -} diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/IbanValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/IbanValidator.php index 3ec4c6ea7a79a126e674179f440a1c5373d8a254..1afc8f01b7118ef2bddbda8bf6a8b4b0978f7919 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/IbanValidator.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/IbanValidator.php @@ -30,13 +30,6 @@ public function validate($value, Constraint $constraint) return; } - // An IBAN without a country code is not an IBAN. - if (0 === preg_match('/[A-Za-z]/', $value)) { - $this->context->addViolation($constraint->message, array('{{ value }}' => $value)); - - return; - } - $teststring = preg_replace('/\s+/', '', $value); if (strlen($teststring) < 4) { diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Image.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Image.php index 9fa8725c6da155cac8e3629fd29c7c17be56a3cf..a23106489f354e53130b1e9161c3f9e8093433c1 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Image.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/Image.php @@ -23,11 +23,6 @@ class Image extends File public $maxWidth = null; public $maxHeight = null; public $minHeight = null; - public $maxRatio = null; - public $minRatio = null; - public $allowSquare = true; - public $allowLandscape = true; - public $allowPortrait = true; public $mimeTypesMessage = 'This file is not a valid image.'; public $sizeNotDetectedMessage = 'The size of the image could not be detected.'; @@ -35,9 +30,4 @@ class Image extends File public $minWidthMessage = 'The image width is too small ({{ width }}px). Minimum width expected is {{ min_width }}px.'; public $maxHeightMessage = 'The image height is too big ({{ height }}px). Allowed maximum height is {{ max_height }}px.'; public $minHeightMessage = 'The image height is too small ({{ height }}px). Minimum height expected is {{ min_height }}px.'; - public $maxRatioMessage = 'The image ratio is too big ({{ ratio }}). Allowed maximum ratio is {{ max_ratio }}.'; - public $minRatioMessage = 'The image ratio is too small ({{ ratio }}). Minimum ratio expected is {{ min_ratio }}.'; - public $allowSquareMessage = 'The image is square ({{ width }}x{{ height }}px). Square images are not allowed.'; - public $allowLandscapeMessage = 'The image is landscape oriented ({{ width }}x{{ height }}px). Landscape oriented images are not allowed.'; - public $allowPortraitMessage = 'The image is portrait oriented ({{ width }}x{{ height }}px). Portrait oriented images are not allowed.'; } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/ImageValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/ImageValidator.php index 76ce8767fcea89bc752a3069c23690870d1cd1a0..79e6bdcddbbb1dd7b18ba869e3eb359255302f09 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/ImageValidator.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/ImageValidator.php @@ -38,9 +38,7 @@ public function validate($value, Constraint $constraint) } if (null === $constraint->minWidth && null === $constraint->maxWidth - && null === $constraint->minHeight && null === $constraint->maxHeight - && null === $constraint->minRatio && null === $constraint->maxRatio - && $constraint->allowSquare && $constraint->allowLandscape && $constraint->allowPortrait) { + && null === $constraint->minHeight && null === $constraint->maxHeight) { return; } @@ -111,55 +109,5 @@ public function validate($value, Constraint $constraint) )); } } - - $ratio = $width / $height; - - if (null !== $constraint->minRatio) { - if (!is_numeric((string) $constraint->minRatio)) { - throw new ConstraintDefinitionException(sprintf('"%s" is not a valid minimum ratio', $constraint->minRatio)); - } - - if ($ratio < $constraint->minRatio) { - $this->context->addViolation($constraint->minRatioMessage, array( - '{{ ratio }}' => $ratio, - '{{ min_ratio }}' => $constraint->minRatio - )); - } - } - - if (null !== $constraint->maxRatio) { - if (!is_numeric((string) $constraint->maxRatio)) { - throw new ConstraintDefinitionException(sprintf('"%s" is not a valid maximum ratio', $constraint->maxRatio)); - } - - if ($ratio > $constraint->maxRatio) { - $this->context->addViolation($constraint->maxRatioMessage, array( - '{{ ratio }}' => $ratio, - '{{ max_ratio }}' => $constraint->maxRatio - )); - } - } - - if (!$constraint->allowSquare && $width == $height) { - $this->context->addViolation($constraint->allowSquareMessage, array( - '{{ width }}' => $width, - '{{ height }}' => $height - )); - } - - if (!$constraint->allowLandscape && $width > $height) { - $this->context->addViolation($constraint->allowLandscapeMessage, array( - '{{ width }}' => $width, - '{{ height }}' => $height - )); - } - - if (!$constraint->allowPortrait && $width < $height) { - $this->context->addViolation($constraint->allowPortraitMessage, array( - '{{ width }}' => $width, - '{{ height }}' => $height - )); - } - } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/LuhnValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/LuhnValidator.php index d3802fe99ae116432396ad201b231abddcb4a85a..0b60eee159c9b95a98f441ca44fd059ed7c0d855 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/LuhnValidator.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/LuhnValidator.php @@ -13,7 +13,6 @@ use Symfony\Component\Validator\Constraint; use Symfony\Component\Validator\ConstraintValidator; -use Symfony\Component\Validator\Exception\UnexpectedTypeException; /** * Validates a PAN using the LUHN Algorithm @@ -39,13 +38,6 @@ public function validate($value, Constraint $constraint) return; } - /** - * need to work with strings only because long numbers are treated as floats and don't work with strlen - */ - if (!is_string($value)) { - throw new UnexpectedTypeException($value, 'string'); - } - if (!is_numeric($value)) { $this->context->addViolation($constraint->message); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/NotBlankValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/NotBlankValidator.php index dd3dbdd8498a1680504d4f0f998de3656e52b8df..8d3efae0d584b28378b2ae8e3aaad11b3ebaceff 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/NotBlankValidator.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/NotBlankValidator.php @@ -15,6 +15,8 @@ use Symfony\Component\Validator\ConstraintValidator; /** + * @author Bernhard Schussek <bschussek@gmail.com> + * * @author Bernhard Schussek <bschussek@gmail.com> * * @api diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/NullValidator.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/NullValidator.php index 9753f43315f37ae2eae03bae548aae267e17cd9c..e8fa24ed74959ee80ef98764f2386d16abe81824 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/NullValidator.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Constraints/NullValidator.php @@ -27,12 +27,6 @@ class NullValidator extends ConstraintValidator public function validate($value, Constraint $constraint) { if (null !== $value) { - if (is_object($value)) { - $value = get_class($value); - } elseif (is_array($value)) { - $value = 'Array'; - } - $this->context->addViolation($constraint->message, array('{{ value }}' => $value)); } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Exception/RuntimeException.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Exception/RuntimeException.php deleted file mode 100644 index df4a50c474338389fd5da6c34f2a0e5a3429a4c7..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Exception/RuntimeException.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@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\Exception; - -/** - * Base RuntimeException for the Validator component. - * - * @author Bernhard Schussek <bschussek@gmail.com> - */ -class RuntimeException extends \RuntimeException implements ExceptionInterface -{ -} diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Exception/UnexpectedTypeException.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Exception/UnexpectedTypeException.php index 49d8cc2082234fdead7612d65968cc321879ca3a..573fecd2e898154660ed51bf0a1b4215f02b50a9 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Exception/UnexpectedTypeException.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Exception/UnexpectedTypeException.php @@ -15,6 +15,6 @@ class UnexpectedTypeException extends ValidatorException { public function __construct($value, $expectedType) { - parent::__construct(sprintf('Expected argument of type "%s", "%s" given', $expectedType, is_object($value) ? get_class($value) : gettype($value))); + parent::__construct(sprintf('Expected argument of type %s, %s given', $expectedType, gettype($value))); } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/BlackholeMetadataFactory.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/BlackholeMetadataFactory.php index 90dd282e08712fe246609a0e0ddf0867f000b253..4cd1175b0cc474a40cbb15800e5ac2c89fe69c0b 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/BlackholeMetadataFactory.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/BlackholeMetadataFactory.php @@ -11,28 +11,15 @@ namespace Symfony\Component\Validator\Mapping; -use Symfony\Component\Validator\MetadataFactoryInterface; - /** - * Simple implementation of MetadataFactoryInterface that can be used when using ValidatorInterface::validateValue(). + * Simple implementation of ClassMetadataFactoryInterface that can be used when using ValidatorInterface::validateValue(). * * @author Fabien Potencier <fabien@symfony.com> */ -class BlackholeMetadataFactory implements MetadataFactoryInterface +class BlackholeMetadataFactory implements ClassMetadataFactoryInterface { - /** - * @inheritdoc - */ - public function getMetadataFor($value) + public function getClassMetadata($class) { throw new \LogicException('BlackholeClassMetadataFactory only works with ValidatorInterface::validateValue().'); } - - /** - * @inheritdoc - */ - public function hasMetadataFor($value) - { - return false; - } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/AbstractLoader.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/AbstractLoader.php index 8deea4eba8c5140467a2be5870b30e9154780b82..54c0dbe47479f0049bd7f7c6850a8f52de848df0 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/AbstractLoader.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/AbstractLoader.php @@ -12,7 +12,6 @@ namespace Symfony\Component\Validator\Mapping\Loader; use Symfony\Component\Validator\Exception\MappingException; -use Symfony\Component\Validator\Constraint; abstract class AbstractLoader implements LoaderInterface { @@ -20,7 +19,7 @@ abstract class AbstractLoader implements LoaderInterface * Contains all known namespaces indexed by their prefix * @var array */ - protected $namespaces = array(); + protected $namespaces; /** * Adds a namespace alias. diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/AnnotationLoader.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/AnnotationLoader.php index 10745c72e7ffc611841769c60aa7a3d9ad03bc6a..0e7e89b548c7711b7ac5140e1001ff3f3a421640 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/AnnotationLoader.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/AnnotationLoader.php @@ -12,7 +12,6 @@ namespace Symfony\Component\Validator\Mapping\Loader; use Doctrine\Common\Annotations\Reader; -use Symfony\Component\Validator\Constraints\Callback; use Symfony\Component\Validator\Exception\MappingException; use Symfony\Component\Validator\Mapping\ClassMetadata; use Symfony\Component\Validator\Constraints\GroupSequence; @@ -64,12 +63,7 @@ public function loadClassMetadata(ClassMetadata $metadata) foreach ($reflClass->getMethods() as $method) { if ($method->getDeclaringClass()->name == $className) { foreach ($this->reader->getMethodAnnotations($method) as $constraint) { - if ($constraint instanceof Callback) { - $constraint->callback = $method->getName(); - $constraint->methods = null; - - $metadata->addConstraint($constraint); - } elseif ($constraint instanceof Constraint) { + if ($constraint instanceof Constraint) { if (preg_match('/^(get|is)(.+)$/i', $method->name, $matches)) { $metadata->addGetterConstraint(lcfirst($matches[2]), $constraint); } else { diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/XmlFileLoader.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/XmlFileLoader.php index cad247e883ddd2c8f50e5c46f2677a8862c69443..a9ae39677775bbc3a9df74e2480319abdce7fd4d 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/XmlFileLoader.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Loader/XmlFileLoader.php @@ -183,7 +183,7 @@ protected function parseOptions(\SimpleXMLElement $nodes) * * @param string $file Path of file * - * @return \SimpleXMLElement + * @return SimpleXMLElement * * @throws MappingException */ diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/README.md b/core/vendor/symfony/validator/Symfony/Component/Validator/README.md index e1601cfe47ebb0e9f6f4f7a545e69bc1d5b9d960..70dd99981a7169f9b2c4c84cc563d564c2abf2fd 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/README.md +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/README.md @@ -107,7 +107,7 @@ https://github.com/fabpot/Silex/blob/master/src/Silex/Provider/ValidatorServiceP Documentation: -http://symfony.com/doc/2.4/book/validation.html +http://symfony.com/doc/2.3/book/validation.html JSR-303 Specification: @@ -116,5 +116,5 @@ http://jcp.org/en/jsr/detail?id=303 You can run the unit tests with the following command: $ cd path/to/Symfony/Component/Validator/ - $ composer.phar install + $ composer.phar install --dev $ phpunit diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/ConstraintTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/ConstraintTest.php index 015a6dab665e25aac4e7dc11562fb713ca50995d..007bb1e3a23e9894b7a63f585ff306e431a47e74 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/ConstraintTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/ConstraintTest.php @@ -15,8 +15,6 @@ 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 { @@ -73,30 +71,6 @@ public function testSetDefaultPropertyDoctrineStyle() $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'); @@ -143,14 +117,14 @@ public function testCanCreateConstraintWithNoDefaultOptionAndEmptyArray() public function testGetTargetsCanBeString() { - $constraint = new ClassConstraint(); + $constraint = new ClassConstraint; $this->assertEquals('class', $constraint->getTargets()); } public function testGetTargetsCanBeArray() { - $constraint = new ConstraintA(); + $constraint = new ConstraintA; $this->assertEquals(array('property', 'class'), $constraint->getTargets()); } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php index 36405e3de88e54396fda216f23135feb4bc9bcb7..d72eaf23fabd343a6efeacd2ff6bef52b88e606e 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php @@ -14,21 +14,6 @@ use Symfony\Component\Validator\Constraint; use Symfony\Component\Validator\Constraints\AbstractComparisonValidator; -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> */ diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CallbackValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CallbackValidatorTest.php index cdcd49bb58ed87be7954c8c348bc023cbc1dcc88..4d248c13c8409ae664ff507e07ee1c7c9d4d5250 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CallbackValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CallbackValidatorTest.php @@ -17,9 +17,9 @@ class CallbackValidatorTest_Class { - public static function validateCallback($object, ExecutionContext $context) + public static function validateStatic($object, ExecutionContext $context) { - $context->addViolation('Callback message', array('{{ value }}' => 'foobar'), 'invalidValue'); + $context->addViolation('Static message', array('{{ value }}' => 'foobar'), 'invalidValue'); return false; } @@ -27,16 +27,16 @@ public static function validateCallback($object, ExecutionContext $context) class CallbackValidatorTest_Object { - public function validate(ExecutionContext $context) + public function validateOne(ExecutionContext $context) { $context->addViolation('My message', array('{{ value }}' => 'foobar'), 'invalidValue'); return false; } - public static function validateStatic($object, ExecutionContext $context) + public function validateTwo(ExecutionContext $context) { - $context->addViolation('Static message', array('{{ value }}' => 'baz'), 'otherInvalidValue'); + $context->addViolation('Other message', array('{{ value }}' => 'baz'), 'otherInvalidValue'); return false; } @@ -68,10 +68,10 @@ public function testNullIsValid() $this->validator->validate(null, new Callback(array('foo'))); } - public function testSingleMethod() + public function testCallbackSingleMethod() { $object = new CallbackValidatorTest_Object(); - $constraint = new Callback('validate'); + $constraint = new Callback(array('validateOne')); $this->context->expects($this->once()) ->method('addViolation') @@ -82,159 +82,24 @@ public function testSingleMethod() $this->validator->validate($object, $constraint); } - public function testSingleMethodExplicitName() + public function testCallbackSingleStaticMethod() { $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array('callback' => 'validate')); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('My message', array( - '{{ value }}' => 'foobar', - )); - - $this->validator->validate($object, $constraint); - } - - public function testSingleStaticMethod() - { - $object = new CallbackValidatorTest_Object(); - $constraint = new Callback('validateStatic'); $this->context->expects($this->once()) ->method('addViolation') ->with('Static message', array( - '{{ value }}' => 'baz', - )); - - $this->validator->validate($object, $constraint); - } - - public function testClosure() - { - $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(function ($object, ExecutionContext $context) { - $context->addViolation('My message', array('{{ value }}' => 'foobar'), 'invalidValue'); - - return false; - }); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('My message', array( - '{{ value }}' => 'foobar', - )); - - $this->validator->validate($object, $constraint); - } - - public function testClosureExplicitName() - { - $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array( - 'callback' => function ($object, ExecutionContext $context) { - $context->addViolation('My message', array('{{ value }}' => 'foobar'), 'invalidValue'); - - return false; - }, - )); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('My message', array( - '{{ value }}' => 'foobar', - )); - - $this->validator->validate($object, $constraint); - } - - public function testArrayCallable() - { - $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array(__CLASS__.'_Class', 'validateCallback')); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('Callback message', array( - '{{ value }}' => 'foobar', - )); - - $this->validator->validate($object, $constraint); - } - - public function testArrayCallableExplicitName() - { - $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array( - 'callback' => array(__CLASS__.'_Class', 'validateCallback'), - )); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('Callback message', array( - '{{ value }}' => 'foobar', - )); - - $this->validator->validate($object, $constraint); - } - - // BC with Symfony < 2.4 - public function testSingleMethodBc() - { - $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array('validate')); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('My message', array( - '{{ value }}' => 'foobar', - )); - - $this->validator->validate($object, $constraint); - } - - // BC with Symfony < 2.4 - public function testSingleMethodBcExplicitName() - { - $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array('methods' => array('validate'))); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('My message', array( - '{{ value }}' => 'foobar', - )); - - $this->validator->validate($object, $constraint); - } - - // BC with Symfony < 2.4 - public function testMultipleMethodsBc() - { - $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array('validate', 'validateStatic')); - - $this->context->expects($this->at(0)) - ->method('addViolation') - ->with('My message', array( '{{ value }}' => 'foobar', )); - $this->context->expects($this->at(1)) - ->method('addViolation') - ->with('Static message', array( - '{{ value }}' => 'baz', - )); - $this->validator->validate($object, $constraint); + $this->validator->validate($object, new Callback(array( + array(__CLASS__.'_Class', 'validateStatic') + ))); } - // BC with Symfony < 2.4 - public function testMultipleMethodsBcExplicitName() + public function testCallbackMultipleMethods() { $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array( - 'methods' => array('validate', 'validateStatic'), - )); $this->context->expects($this->at(0)) ->method('addViolation') @@ -243,45 +108,23 @@ public function testMultipleMethodsBcExplicitName() )); $this->context->expects($this->at(1)) ->method('addViolation') - ->with('Static message', array( + ->with('Other message', array( '{{ value }}' => 'baz', )); - $this->validator->validate($object, $constraint); - } - - // BC with Symfony < 2.4 - public function testSingleStaticMethodBc() - { - $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array( - array(__CLASS__.'_Class', 'validateCallback') - )); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('Callback message', array( - '{{ value }}' => 'foobar', - )); - - $this->validator->validate($object, $constraint); + $this->validator->validate($object, new Callback(array( + 'validateOne', 'validateTwo' + ))); } - // BC with Symfony < 2.4 - public function testSingleStaticMethodBcExplicitName() + /** + * @expectedException \Symfony\Component\Validator\Exception\UnexpectedTypeException + */ + public function testExpectCallbackArray() { $object = new CallbackValidatorTest_Object(); - $constraint = new Callback(array( - 'methods' => array(array(__CLASS__.'_Class', 'validateCallback')), - )); - $this->context->expects($this->once()) - ->method('addViolation') - ->with('Callback message', array( - '{{ value }}' => 'foobar', - )); - - $this->validator->validate($object, $constraint); + $this->validator->validate($object, new Callback('foobar')); } /** @@ -304,43 +147,10 @@ public function testExpectValidCallbacks() $this->validator->validate($object, new Callback(array(array('foo', 'bar')))); } - /** - * @expectedException \Symfony\Component\Validator\Exception\ConstraintDefinitionException - */ - public function testExpectEitherCallbackOrMethods() - { - $object = new CallbackValidatorTest_Object(); - - $this->validator->validate($object, new Callback(array( - 'callback' => 'validate', - 'methods' => array('validateStatic'), - ))); - } - public function testConstraintGetTargets() { $constraint = new Callback(array('foo')); $this->assertEquals('class', $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/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ChoiceValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ChoiceValidatorTest.php index 9267fdb8726922f5a433965ca656e9a4c7768bbe..c1618b6771c18ded822a8e6742076f3cdbebcc8d 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ChoiceValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ChoiceValidatorTest.php @@ -105,7 +105,7 @@ public function testValidChoiceCallbackFunction() public function testValidChoiceCallbackClosure() { - $constraint = new Choice(array('callback' => function () { + $constraint = new Choice(array('callback' => function() { return array('foo', 'bar'); })); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CountryValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CountryValidatorTest.php index 95851e8097ad788e870badf1b6f833ae28afbd9a..3eedaa32643f6daf1960bd25bbbe1b9ff34fdc46 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CountryValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CountryValidatorTest.php @@ -104,14 +104,4 @@ public function getInvalidCountries() array('EN'), ); } - - public function testValidateUsingCountrySpecificLocale() - { - \Locale::setDefault('en_GB'); - $existingCountry = 'GB'; - $this->context->expects($this->never()) - ->method('addViolation'); - - $this->validator->validate($existingCountry, new Country()); - } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CurrencyValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CurrencyValidatorTest.php index ea6c2eb43ac029e06433106bd5097e2f1a224ec2..d2e233ca3798ce2dfc0e04212dea9abf68e47307 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CurrencyValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/CurrencyValidatorTest.php @@ -70,18 +70,6 @@ public function testValidCurrencies($currency) $this->validator->validate($currency, new Currency()); } - /** - * @dataProvider getValidCurrencies - **/ - public function testValidCurrenciesWithCountrySpecificLocale($currency) - { - \Locale::setDefault('en_GB'); - $this->context->expects($this->never()) - ->method('addViolation'); - - $this->validator->validate($currency, new Currency()); - } - public function getValidCurrencies() { return array( diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/EqualToValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/EqualToValidatorTest.php index 6f8abc101250989cf88bc46c3e35575ce1b26e55..b47d9e6750bed5e150f3be72e10e59704322e2a9 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/EqualToValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/EqualToValidatorTest.php @@ -13,6 +13,7 @@ use Symfony\Component\Validator\Constraints\EqualTo; use Symfony\Component\Validator\Constraints\EqualToValidator; +use Symfony\Component\Validator\Tests\Constraints\AbstractComparisonValidatorTestCase; /** * @author Daniel Holmes <daniel@danielholmes.org> @@ -39,7 +40,6 @@ public function provideValidComparisons() array(3, '3'), array('a', 'a'), array(new \DateTime('2000-01-01'), new \DateTime('2000-01-01')), - array(new ComparisonTest_Class(5), new ComparisonTest_Class(5)), array(null, 1), ); } @@ -52,8 +52,7 @@ public function provideInvalidComparisons() return array( array(1, 2, '2', 'integer'), array('22', '333', "'333'", 'string'), - array(new \DateTime('2001-01-01'), new \DateTime('2000-01-01'), '2000-01-01 00:00:00', 'DateTime'), - array(new ComparisonTest_Class(4), new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'), + array(new \DateTime('2001-01-01'), new \DateTime('2000-01-01'), '2000-01-01 00:00:00', 'DateTime') ); } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ExpressionValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ExpressionValidatorTest.php deleted file mode 100644 index b71138e5f6bbdbd43707e035f4d00daa7610c578..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ExpressionValidatorTest.php +++ /dev/null @@ -1,197 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@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; - -class ExpressionValidatorTest extends \PHPUnit_Framework_TestCase -{ - protected $context; - protected $validator; - - protected function setUp() - { - $this->context = $this->getMock('Symfony\Component\Validator\ExecutionContext', array(), array(), '', false); - $this->validator = new ExpressionValidator(PropertyAccess::createPropertyAccessor()); - $this->validator->initialize($this->context); - - $this->context->expects($this->any()) - ->method('getClassName') - ->will($this->returnValue(__CLASS__)); - } - - protected function tearDown() - { - $this->context = null; - $this->validator = null; - } - - public function testNullIsValid() - { - $this->context->expects($this->never()) - ->method('addViolation'); - - $this->validator->validate(null, new Expression('value == 1')); - } - - public function testEmptyStringIsValid() - { - $this->context->expects($this->never()) - ->method('addViolation'); - - $this->validator->validate('', new Expression('value == 1')); - } - - public function testSucceedingExpressionAtObjectLevel() - { - $constraint = new Expression('this.property == 1'); - - $object = (object) array('property' => '1'); - - $this->context->expects($this->any()) - ->method('getPropertyName') - ->will($this->returnValue(null)); - - $this->context->expects($this->never()) - ->method('addViolation'); - - $this->validator->validate($object, $constraint); - } - - public function testFailingExpressionAtObjectLevel() - { - $constraint = new Expression(array( - 'expression' => 'this.property == 1', - 'message' => 'myMessage', - )); - - $object = (object) array('property' => '2'); - - $this->context->expects($this->any()) - ->method('getPropertyName') - ->will($this->returnValue(null)); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('myMessage'); - - $this->validator->validate($object, $constraint); - } - - public function testSucceedingExpressionAtPropertyLevel() - { - $constraint = new Expression('value == this.expected'); - - $object = (object) array('expected' => '1'); - - $this->context->expects($this->any()) - ->method('getPropertyName') - ->will($this->returnValue('property')); - - $this->context->expects($this->any()) - ->method('getPropertyPath') - ->will($this->returnValue('property')); - - $this->context->expects($this->any()) - ->method('getRoot') - ->will($this->returnValue($object)); - - $this->context->expects($this->never()) - ->method('addViolation'); - - $this->validator->validate('1', $constraint); - } - - public function testFailingExpressionAtPropertyLevel() - { - $constraint = new Expression(array( - 'expression' => 'value == this.expected', - 'message' => 'myMessage', - )); - - $object = (object) array('expected' => '1'); - - $this->context->expects($this->any()) - ->method('getPropertyName') - ->will($this->returnValue('property')); - - $this->context->expects($this->any()) - ->method('getPropertyPath') - ->will($this->returnValue('property')); - - $this->context->expects($this->any()) - ->method('getRoot') - ->will($this->returnValue($object)); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('myMessage'); - - $this->validator->validate('2', $constraint); - } - - public function testSucceedingExpressionAtNestedPropertyLevel() - { - $constraint = new Expression('value == this.expected'); - - $object = (object) array('expected' => '1'); - $root = (object) array('nested' => $object); - - $this->context->expects($this->any()) - ->method('getPropertyName') - ->will($this->returnValue('property')); - - $this->context->expects($this->any()) - ->method('getPropertyPath') - ->will($this->returnValue('nested.property')); - - $this->context->expects($this->any()) - ->method('getRoot') - ->will($this->returnValue($root)); - - $this->context->expects($this->never()) - ->method('addViolation'); - - $this->validator->validate('1', $constraint); - } - - public function testFailingExpressionAtNestedPropertyLevel() - { - $constraint = new Expression(array( - 'expression' => 'value == this.expected', - 'message' => 'myMessage', - )); - - $object = (object) array('expected' => '1'); - $root = (object) array('nested' => $object); - - $this->context->expects($this->any()) - ->method('getPropertyName') - ->will($this->returnValue('property')); - - $this->context->expects($this->any()) - ->method('getPropertyPath') - ->will($this->returnValue('nested.property')); - - $this->context->expects($this->any()) - ->method('getRoot') - ->will($this->returnValue($root)); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('myMessage'); - - $this->validator->validate('2', $constraint); - } -} diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/FileValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/FileValidatorTest.php index 0927aedacdd5c45159f6b359eedcb07fd552ea3c..0ca98067d324d119d5251d4e9c7b316133f21ce2 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/FileValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/FileValidatorTest.php @@ -24,6 +24,10 @@ abstract class FileValidatorTest extends \PHPUnit_Framework_TestCase protected function setUp() { + if (!class_exists('Symfony\Component\HttpFoundation\File\UploadedFile')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $this->context = $this->getMock('Symfony\Component\Validator\ExecutionContext', array(), array(), '', false); $this->validator = new FileValidator(); $this->validator->initialize($this->context); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/Fixtures/test_landscape.gif b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/Fixtures/test_landscape.gif deleted file mode 100644 index 870123532c3b97be8e2ab75452eca7060fb474c4..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/Fixtures/test_landscape.gif +++ /dev/null @@ -1,3 +0,0 @@ -GIF89a��€��ÿÿÿÿÿÿ!ù -��,�������L -�; \ No newline at end of file diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/Fixtures/test_portrait.gif b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/Fixtures/test_portrait.gif deleted file mode 100644 index cc480ca88ed7fa80ff8e3907ba14d692e3e9d3d4..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/Fixtures/test_portrait.gif +++ /dev/null @@ -1,3 +0,0 @@ -GIF89a��€��ÿÿÿÿÿÿ!ù -��,�������L -�; \ No newline at end of file diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/GreaterThanValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/GreaterThanValidatorTest.php index 1fc5311cf53329bb496603873c80366dad493dea..72087fab83e34e8cab56e9f2668e1c0f141fac3d 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/GreaterThanValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/GreaterThanValidatorTest.php @@ -37,7 +37,6 @@ public function provideValidComparisons() return array( array(2, 1), array(new \DateTime('2005/01/01'), new \DateTime('2001/01/01')), - array(new ComparisonTest_Class(5), new ComparisonTest_Class(4)), array('333', '22'), array(null, 1), ); @@ -53,8 +52,6 @@ public function provideInvalidComparisons() array(2, 2, '2', 'integer'), array(new \DateTime('2000/01/01'), new \DateTime('2005/01/01'), '2005-01-01 00:00:00', 'DateTime'), array(new \DateTime('2000/01/01'), new \DateTime('2000/01/01'), '2000-01-01 00:00:00', 'DateTime'), - array(new ComparisonTest_Class(4), new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'), - array(new ComparisonTest_Class(5), new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'), array('22', '333', "'333'", 'string'), array('22', '22', "'22'", 'string') ); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/IbanValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/IbanValidatorTest.php index fa3b0203b2e4ffda252502510c75035fc93a78ad..cfd9f2cd8f43882ffd68c8fb3ddf99a205448184 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/IbanValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/IbanValidatorTest.php @@ -53,6 +53,7 @@ public function testValidIbans($iban) public function getValidIbans() { return array( + array('CH93 0076 2011 6238 5295 7'), //Switzerland array('CH9300762011623852957'), // Switzerland without spaces //Country list @@ -181,7 +182,6 @@ public function getInvalidIbans() array('CY170020 128 0000 0012 0052 7600'), array('foo'), array('123'), - array('0750447346') ); } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/IdenticalToValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/IdenticalToValidatorTest.php index 39234239c0958d3c7c11f2e1ce8266e94ae0d9fa..a1f6a69f4ac17cb0b678690248da3c687db2d76b 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/IdenticalToValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/IdenticalToValidatorTest.php @@ -13,6 +13,7 @@ use Symfony\Component\Validator\Constraints\IdenticalTo; use Symfony\Component\Validator\Constraints\IdenticalToValidator; +use Symfony\Component\Validator\Tests\Constraints\AbstractComparisonValidatorTestCase; /** * @author Daniel Holmes <daniel@danielholmes.org> @@ -35,13 +36,11 @@ protected function createConstraint(array $options) public function provideValidComparisons() { $date = new \DateTime('2000-01-01'); - $object = new ComparisonTest_Class(2); return array( array(3, 3), array('a', 'a'), array($date, $date), - array($object, $object), array(null, 1), ); } @@ -56,8 +55,7 @@ public function provideInvalidComparisons() array(2, '2', "'2'", 'string'), array('22', '333', "'333'", 'string'), array(new \DateTime('2001-01-01'), new \DateTime('2001-01-01'), '2001-01-01 00:00:00', 'DateTime'), - array(new \DateTime('2001-01-01'), new \DateTime('1999-01-01'), '1999-01-01 00:00:00', 'DateTime'), - array(new ComparisonTest_Class(4), new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'), + array(new \DateTime('2001-01-01'), new \DateTime('1999-01-01'), '1999-01-01 00:00:00', 'DateTime') ); } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ImageValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ImageValidatorTest.php index 114c2d2f0499e7b54d596c9c614b379c1693ce5e..88545016243d11fd02214ed20eb0cad4961cd3d5 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ImageValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/ImageValidatorTest.php @@ -20,8 +20,6 @@ class ImageValidatorTest extends \PHPUnit_Framework_TestCase protected $validator; protected $path; protected $image; - protected $imageLandscape; - protected $imagePortrait; protected function setUp() { @@ -29,8 +27,6 @@ protected function setUp() $this->validator = new ImageValidator(); $this->validator->initialize($this->context); $this->image = __DIR__.'/Fixtures/test.gif'; - $this->imageLandscape = __DIR__.'/Fixtures/test_landscape.gif'; - $this->imagePortrait = __DIR__.'/Fixtures/test_portrait.gif'; } public function testNullIsValid() @@ -51,6 +47,10 @@ public function testEmptyStringIsValid() public function testValidImage() { + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $this->context->expects($this->never()) ->method('addViolation'); @@ -59,6 +59,10 @@ public function testValidImage() public function testValidSize() { + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $this->context->expects($this->never()) ->method('addViolation'); @@ -74,6 +78,10 @@ public function testValidSize() public function testWidthTooSmall() { + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $constraint = new Image(array( 'minWidth' => 3, 'minWidthMessage' => 'myMessage', @@ -91,6 +99,10 @@ public function testWidthTooSmall() public function testWidthTooBig() { + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $constraint = new Image(array( 'maxWidth' => 1, 'maxWidthMessage' => 'myMessage', @@ -108,6 +120,10 @@ public function testWidthTooBig() public function testHeightTooSmall() { + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $constraint = new Image(array( 'minHeight' => 3, 'minHeightMessage' => 'myMessage', @@ -125,6 +141,10 @@ public function testHeightTooSmall() public function testHeightTooBig() { + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $constraint = new Image(array( 'maxHeight' => 1, 'maxHeightMessage' => 'myMessage', @@ -145,6 +165,10 @@ public function testHeightTooBig() */ public function testInvalidMinWidth() { + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $constraint = new Image(array( 'minWidth' => '1abc', )); @@ -157,6 +181,10 @@ public function testInvalidMinWidth() */ public function testInvalidMaxWidth() { + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $constraint = new Image(array( 'maxWidth' => '1abc', )); @@ -169,6 +197,10 @@ public function testInvalidMaxWidth() */ public function testInvalidMinHeight() { + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } + $constraint = new Image(array( 'minHeight' => '1abc', )); @@ -181,119 +213,14 @@ public function testInvalidMinHeight() */ 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->context->expects($this->once()) - ->method('addViolation') - ->with('myMessage', array( - '{{ ratio }}' => 1, - '{{ min_ratio }}' => 2, - )); - - $this->validator->validate($this->image, $constraint); - } - - public function testRatioTooBig() - { - $constraint = new Image(array( - 'maxRatio' => 0.5, - 'maxRatioMessage' => 'myMessage', - )); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('myMessage', array( - '{{ ratio }}' => 1, - '{{ max_ratio }}' => 0.5, - )); - - $this->validator->validate($this->image, $constraint); - } - - /** - * @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); - } + if (!class_exists('Symfony\Component\HttpFoundation\File\File')) { + $this->markTestSkipped('The "HttpFoundation" component is not available'); + } - public function testSquareNotAllowed() - { $constraint = new Image(array( - 'allowSquare' => false, - 'allowSquareMessage' => 'myMessage', + 'maxHeight' => '1abc', )); - $this->context->expects($this->once()) - ->method('addViolation') - ->with('myMessage', array( - '{{ width }}' => 2, - '{{ height }}' => 2, - )); - $this->validator->validate($this->image, $constraint); } - - public function testLandscapeNotAllowed() - { - $constraint = new Image(array( - 'allowLandscape' => false, - 'allowLandscapeMessage' => 'myMessage', - )); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('myMessage', array( - '{{ width }}' => 2, - '{{ height }}' => 1, - )); - - $this->validator->validate($this->imageLandscape, $constraint); - } - - public function testPortraitNotAllowed() - { - $constraint = new Image(array( - 'allowPortrait' => false, - 'allowPortraitMessage' => 'myMessage', - )); - - $this->context->expects($this->once()) - ->method('addViolation') - ->with('myMessage', array( - '{{ width }}' => 1, - '{{ height }}' => 2, - )); - - $this->validator->validate($this->imagePortrait, $constraint); - } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LanguageValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LanguageValidatorTest.php index 3588887d74998092e9b7d957de4cbb5027cab3bc..1230e3f322afe6ae3608a6f6892463a24524e096 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LanguageValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LanguageValidatorTest.php @@ -104,16 +104,4 @@ public function getInvalidLanguages() array('foobar'), ); } - - public function testValidateUsingCountrySpecificLocale() - { - \Locale::setDefault('fr_FR'); - $existingLanguage = 'en'; - $this->context->expects($this->never()) - ->method('addViolation'); - - $this->validator->validate($existingLanguage, new Language(array( - 'message' => 'aMessage' - ))); - } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LessThanOrEqualValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LessThanOrEqualValidatorTest.php index 24ad0faf75b055391860c3c9643a6dcaef39e417..406e222119e26407fa175afe5445600e7aefc3f5 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LessThanOrEqualValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LessThanOrEqualValidatorTest.php @@ -39,8 +39,6 @@ public function provideValidComparisons() 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 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), @@ -55,7 +53,6 @@ public function provideInvalidComparisons() return array( array(2, 1, '1', 'integer'), array(new \DateTime('2010-01-01'), new \DateTime('2000-01-01'), '2000-01-01 00:00:00', 'DateTime'), - array(new ComparisonTest_Class(5), new ComparisonTest_Class(4), '4', __NAMESPACE__.'\ComparisonTest_Class'), array('c', 'b', "'b'", 'string') ); } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LessThanValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LessThanValidatorTest.php index da7070e762e99426c31633551863994a1a5d3e4b..f26269b3c23bfbfc4aa2d47163f7c8ef1bb6ef43 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LessThanValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LessThanValidatorTest.php @@ -37,7 +37,6 @@ public function provideValidComparisons() return array( array(1, 2), array(new \DateTime('2000-01-01'), new \DateTime('2010-01-01')), - array(new ComparisonTest_Class(4), new ComparisonTest_Class(5)), array('22', '333'), array(null, 1), ); @@ -53,8 +52,6 @@ public function provideInvalidComparisons() array(2, 2, '2', 'integer'), array(new \DateTime('2010-01-01'), new \DateTime('2000-01-01'), '2000-01-01 00:00:00', 'DateTime'), array(new \DateTime('2000-01-01'), new \DateTime('2000-01-01'), '2000-01-01 00:00:00', 'DateTime'), - array(new ComparisonTest_Class(5), new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'), - array(new ComparisonTest_Class(6), new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'), array('333', '22', "'22'", 'string') ); } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LuhnValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LuhnValidatorTest.php index 11c6a7cad529454fbf429483f59d8cdfeca83f1e..963710860b17240b5f3e430577a5f5ae4dedd3ea 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LuhnValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/LuhnValidatorTest.php @@ -103,28 +103,7 @@ public function getInvalidNumbers() array('1234567812345678'), array('4222222222222222'), array('0000000000000000'), - ); - } - - /** - * @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/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NotEqualToValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NotEqualToValidatorTest.php index dcf46a668d81e4d3a85114554f6f9dbc5a95e75d..0122643a7e86e9a829bdaa8b7112296f6fcff144 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NotEqualToValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NotEqualToValidatorTest.php @@ -13,6 +13,7 @@ use Symfony\Component\Validator\Constraints\NotEqualTo; use Symfony\Component\Validator\Constraints\NotEqualToValidator; +use Symfony\Component\Validator\Tests\Constraints\AbstractComparisonValidatorTestCase; /** * @author Daniel Holmes <daniel@danielholmes.org> @@ -38,7 +39,6 @@ public function provideValidComparisons() array(1, 2), array('22', '333'), array(new \DateTime('2001-01-01'), new \DateTime('2000-01-01')), - array(new ComparisonTest_Class(6), new ComparisonTest_Class(5)), array(null, 1), ); } @@ -52,8 +52,7 @@ public function provideInvalidComparisons() array(3, 3, '3', 'integer'), array('2', 2, '2', 'integer'), array('a', 'a', "'a'", 'string'), - array(new \DateTime('2000-01-01'), new \DateTime('2000-01-01'), '2000-01-01 00:00:00', 'DateTime'), - array(new ComparisonTest_Class(5), new ComparisonTest_Class(5), '5', __NAMESPACE__.'\ComparisonTest_Class'), + array(new \DateTime('2000-01-01'), new \DateTime('2000-01-01'), '2000-01-01 00:00:00', 'DateTime') ); } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NotIdenticalToValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NotIdenticalToValidatorTest.php index 28026c08745c71aa80696562a38fb18348ac7707..462202dd5a414bf1ff6e5a1536c4622efe284d80 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NotIdenticalToValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NotIdenticalToValidatorTest.php @@ -13,6 +13,7 @@ use Symfony\Component\Validator\Constraints\NotIdenticalTo; use Symfony\Component\Validator\Constraints\NotIdenticalToValidator; +use Symfony\Component\Validator\Tests\Constraints\AbstractComparisonValidatorTestCase; /** * @author Daniel Holmes <daniel@danielholmes.org> @@ -50,13 +51,11 @@ public function provideValidComparisons() public function provideInvalidComparisons() { $date = new \DateTime('2000-01-01'); - $object = new ComparisonTest_Class(2); return array( array(3, 3, '3', 'integer'), array('a', 'a', "'a'", 'string'), - array($date, $date, '2000-01-01 00:00:00', 'DateTime'), - array($object, $object, '2', __NAMESPACE__.'\ComparisonTest_Class'), + array($date, $date, '2000-01-01 00:00:00', 'DateTime') ); } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NullValidatorTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NullValidatorTest.php index d343c869fdf8773d9b57f31a2a6f0ddbf323bf20..4466aa17c9df671b47b6992ec945b062e518c533 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NullValidatorTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Constraints/NullValidatorTest.php @@ -43,7 +43,7 @@ public function testNullIsValid() /** * @dataProvider getInvalidValues */ - public function testInvalidValues($value, $readableValue) + public function testInvalidValues($value) { $constraint = new Null(array( 'message' => 'myMessage' @@ -52,7 +52,7 @@ public function testInvalidValues($value, $readableValue) $this->context->expects($this->once()) ->method('addViolation') ->with('myMessage', array( - '{{ value }}' => $readableValue, + '{{ value }}' => $value, )); $this->validator->validate($value, $constraint); @@ -61,13 +61,10 @@ public function testInvalidValues($value, $readableValue) public function getInvalidValues() { return array( - array(0, 0), - array(false, false), - array(true, true), - array('', ''), - array('foo bar', 'foo bar'), - array(new \DateTime(), 'DateTime'), - array(array(), 'Array'), + array(0), + array(false), + array(true), + array(''), ); } } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/CallbackClass.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/CallbackClass.php deleted file mode 100644 index 0f6a2f4ae3d9f4d9bc156d49f5f4bc7693944ca2..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/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/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/ConstraintWithValue.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/ConstraintWithValue.php deleted file mode 100644 index 4ebd981eef92479014fa6ec13bebb06ee813fac5..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/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/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/ConstraintWithValueAsDefault.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/ConstraintWithValueAsDefault.php deleted file mode 100644 index a975e0787fc97eda82bcb1452b3356ab9e2b31d6..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/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/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/Entity.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/Entity.php index 70bdc5aec699868b2dd3c3a23f6386f1a7fc6cd8..e1cb3e04902ce4609e58089911993d0e403d6f4e 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/Entity.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Fixtures/Entity.php @@ -12,12 +12,10 @@ 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 { @@ -60,18 +58,4 @@ 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/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/BlackholeMetadataFactoryTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/BlackholeMetadataFactoryTest.php deleted file mode 100644 index 74bcc69d7fb32342568c11abb23efe2225550e96..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/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; - -use Symfony\Component\Validator\Mapping\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/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/ClassMetadataFactoryTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/ClassMetadataFactoryTest.php index bee4025d0d279828815ceedf3882c736b342c1bb..6f842cd6d1e78404183e0111f321f6b43fee303f 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/ClassMetadataFactoryTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/ClassMetadataFactoryTest.php @@ -77,7 +77,7 @@ public function testWriteMetadataToCache() ->will($this->returnValue(false)); $cache->expects($this->once()) ->method('write') - ->will($this->returnCallback(function ($metadata) use ($tester, $constraints) { + ->will($this->returnCallback(function($metadata) use ($tester, $constraints) { $tester->assertEquals($constraints, $metadata->getConstraints()); })); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/AbstractMethodStaticLoader.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/AbstractMethodStaticLoader.php index 7c6f362abb537418f4b3fc0da86a7392b5b3cfe2..3a1416cfc56e9c8bf7cae94bb1c1ec8e05948134 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/AbstractMethodStaticLoader.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/AbstractMethodStaticLoader.php @@ -7,4 +7,4 @@ abstract class AbstractMethodStaticLoader { abstract public static function loadMetadata(ClassMetadata $metadata); -} +} \ No newline at end of file diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/AnnotationLoaderTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/AnnotationLoaderTest.php index 0d255b8fcad0d63ccc40f946612507883239903d..22a39c582e78018138218f69ab70b0598b49b1b5 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/AnnotationLoaderTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/AnnotationLoaderTest.php @@ -13,7 +13,6 @@ use Doctrine\Common\Annotations\AnnotationReader; use Symfony\Component\Validator\Constraints\All; -use Symfony\Component\Validator\Constraints\Callback; use Symfony\Component\Validator\Constraints\Collection; use Symfony\Component\Validator\Constraints\NotNull; use Symfony\Component\Validator\Constraints\Range; @@ -24,6 +23,13 @@ class AnnotationLoaderTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Doctrine\Common\Annotations\AnnotationReader')) { + $this->markTestSkipped('The "Doctrine Common" library is not available'); + } + } + public function testLoadClassMetadataReturnsTrueIfSuccessful() { $reader = new AnnotationReader(); @@ -51,9 +57,6 @@ public function testLoadClassMetadata() $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))))); @@ -118,9 +121,6 @@ public function testLoadClassMetadataAndMerge() $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))))); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/XmlFileLoaderTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/XmlFileLoaderTest.php index 82195405e6614206dffd53f7f050e5f7ba661552..7c6e355bd171ff7d3fd0f63fa7d878e5fa987190 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/XmlFileLoaderTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/XmlFileLoaderTest.php @@ -12,7 +12,6 @@ namespace Symfony\Component\Validator\Tests\Mapping\Loader; use Symfony\Component\Validator\Constraints\All; -use Symfony\Component\Validator\Constraints\Callback; use Symfony\Component\Validator\Constraints\Collection; use Symfony\Component\Validator\Constraints\NotNull; use Symfony\Component\Validator\Constraints\Range; @@ -52,9 +51,6 @@ public function testLoadClassMetadata() $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'))); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/YamlFileLoaderTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/YamlFileLoaderTest.php index 0d9a0b62c31221d11ac4cd06634b58e0e7f1340a..9e31cbb37d22ea793d9a8adb73aac3656b59c1ac 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/YamlFileLoaderTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/YamlFileLoaderTest.php @@ -12,7 +12,6 @@ namespace Symfony\Component\Validator\Tests\Mapping\Loader; use Symfony\Component\Validator\Constraints\All; -use Symfony\Component\Validator\Constraints\Callback; use Symfony\Component\Validator\Constraints\Collection; use Symfony\Component\Validator\Constraints\NotNull; use Symfony\Component\Validator\Constraints\Range; @@ -24,6 +23,13 @@ class YamlFileLoaderTest extends \PHPUnit_Framework_TestCase { + protected function setUp() + { + if (!class_exists('Symfony\Component\Yaml\Yaml')) { + $this->markTestSkipped('The "Yaml" component is not available'); + } + } + public function testLoadClassMetadataReturnsFalseIfEmpty() { $loader = new YamlFileLoader(__DIR__.'/empty-mapping.yml'); @@ -69,9 +75,6 @@ public function testLoadClassMetadata() $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'))); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/constraint-mapping.xml b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/constraint-mapping.xml index 1eee1cb18036a2f6c001e59232a6475c8ddd1770..dfac70d9cf6e2dfaa66a201e4e1763db5c076d1b 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/constraint-mapping.xml +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/constraint-mapping.xml @@ -21,16 +21,6 @@ <!-- 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"> diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/constraint-mapping.yml b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/constraint-mapping.yml index e52d3f04b2ced3bd759d5bb9d03b5fa3f33f369f..38188dc5d976a9618f13b8799f2bbbd8934c06c7 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/constraint-mapping.yml +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Loader/constraint-mapping.yml @@ -11,10 +11,6 @@ Symfony\Component\Validator\Tests\Fixtures\Entity: - 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: diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/ValidatorBuilderTest.php b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/ValidatorBuilderTest.php index 900243f31ad6518dc80044af9e4eb38f39abc437..d48d6b1fe429361b8f5c8a4e662e4bd67c40b0cf 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/ValidatorBuilderTest.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/ValidatorBuilderTest.php @@ -75,6 +75,10 @@ public function testAddMethodMappings() public function testEnableAnnotationMapping() { + if (!class_exists('Doctrine\Common\Annotations\AnnotationReader')) { + $this->markTestSkipped('Annotations is required for this test'); + } + $this->assertSame($this->builder, $this->builder->enableAnnotationMapping()); } diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorBuilder.php b/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorBuilder.php index e24a7071662e22a5a5662321d57146af81cc6571..a5bfc1fdf63c5182e3d03590c317ffe87521f3b4 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorBuilder.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorBuilder.php @@ -11,8 +11,6 @@ namespace Symfony\Component\Validator; -use Symfony\Component\PropertyAccess\PropertyAccess; -use Symfony\Component\PropertyAccess\PropertyAccessorInterface; use Symfony\Component\Validator\Mapping\ClassMetadataFactory; use Symfony\Component\Validator\Exception\ValidatorException; use Symfony\Component\Validator\Mapping\Loader\LoaderChain; @@ -86,11 +84,6 @@ class ValidatorBuilder implements ValidatorBuilderInterface */ private $translationDomain; - /** - * @var PropertyAccessorInterface - */ - private $propertyAccessor; - /** * {@inheritdoc} */ @@ -205,8 +198,8 @@ public function enableAnnotationMapping(Reader $annotationReader = null) } if (null === $annotationReader) { - if (!class_exists('Doctrine\Common\Annotations\AnnotationReader') || !class_exists('Doctrine\Common\Cache\ArrayCache')) { - throw new \RuntimeException('Enabling annotation based constraint mapping requires the packages doctrine/annotations and doctrine/cache to be installed.'); + if (!class_exists('Doctrine\Common\Annotations\AnnotationReader')) { + throw new \RuntimeException('Requested a ValidatorFactory with an AnnotationLoader, but the AnnotationReader was not found. You should add Doctrine Common to your project.'); } $annotationReader = new CachedReader(new AnnotationReader(), new ArrayCache()); @@ -260,10 +253,6 @@ public function setMetadataCache(CacheInterface $cache) */ public function setConstraintValidatorFactory(ConstraintValidatorFactoryInterface $validatorFactory) { - if (null !== $this->propertyAccessor) { - throw new ValidatorException('You cannot set a validator factory after setting a custom property accessor. Remove the call to setPropertyAccessor() if you want to call setConstraintValidatorFactory().'); - } - $this->validatorFactory = $validatorFactory; return $this; @@ -289,20 +278,6 @@ public function setTranslationDomain($translationDomain) return $this; } - /** - * {@inheritdoc} - */ - public function setPropertyAccessor(PropertyAccessorInterface $propertyAccessor) - { - if (null !== $this->validatorFactory) { - throw new ValidatorException('You cannot set a property accessor after setting a custom validator factory. Configure your validator factory instead.'); - } - - $this->propertyAccessor = $propertyAccessor; - - return $this; - } - /** * {@inheritdoc} */ @@ -344,8 +319,7 @@ public function getValidator() $metadataFactory = new ClassMetadataFactory($loader, $this->metadataCache); } - $propertyAccessor = $this->propertyAccessor ?: PropertyAccess::createPropertyAccessor(); - $validatorFactory = $this->validatorFactory ?: new ConstraintValidatorFactory($propertyAccessor); + $validatorFactory = $this->validatorFactory ?: new ConstraintValidatorFactory(); $translator = $this->translator ?: new DefaultTranslator(); return new Validator($metadataFactory, $validatorFactory, $translator, $this->translationDomain, $this->initializers); diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorBuilderInterface.php b/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorBuilderInterface.php index 92aaca756a3bcddb907a4e82e754428a375357e1..99f367b6aa1ae2507d207ce06126b6630c7ee141 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorBuilderInterface.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorBuilderInterface.php @@ -11,7 +11,6 @@ namespace Symfony\Component\Validator; -use Symfony\Component\PropertyAccess\PropertyAccessorInterface; use Symfony\Component\Validator\Mapping\Cache\CacheInterface; use Symfony\Component\Translation\TranslatorInterface; use Doctrine\Common\Annotations\Reader; @@ -160,15 +159,6 @@ public function setTranslator(TranslatorInterface $translator); */ public function setTranslationDomain($translationDomain); - /** - * Sets the property accessor for resolving property paths. - * - * @param PropertyAccessorInterface $propertyAccessor The property accessor. - * - * @return ValidatorBuilderInterface The builder object. - */ - public function setPropertyAccessor(PropertyAccessorInterface $propertyAccessor); - /** * Builds and returns a new validator object. * diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorInterface.php b/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorInterface.php index 98e02d90cf4d8085a7baec19a376250bd0b9f27a..b56c5801f290a9113db33aa6c371fb255345a877 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorInterface.php +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/ValidatorInterface.php @@ -11,6 +11,8 @@ namespace Symfony\Component\Validator; +use Symfony\Component\Validator\Constraint; + /** * Validates values and graphs of objects and arrays. * diff --git a/core/vendor/symfony/validator/Symfony/Component/Validator/composer.json b/core/vendor/symfony/validator/Symfony/Component/Validator/composer.json index 1b4b6a69078223bfa33aedb6d2dee35e8060efc3..951ef01526e9b3c80dd77745b9133b189dd609dd 100644 --- a/core/vendor/symfony/validator/Symfony/Component/Validator/composer.json +++ b/core/vendor/symfony/validator/Symfony/Component/Validator/composer.json @@ -17,20 +17,16 @@ ], "require": { "php": ">=5.3.3", - "symfony/translation": "~2.0", - "symfony/property-access": "~2.2" + "symfony/translation": "~2.0" }, "require-dev": { "symfony/http-foundation": "~2.1", "symfony/intl": "~2.3", "symfony/yaml": "~2.0", - "symfony/config": "~2.2", - "doctrine/annotations": "~1.0", - "doctrine/cache": "~1.0" + "symfony/config": "~2.2" }, "suggest": { - "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.", - "doctrine/cache": "For using the default cached annotation reader", + "doctrine/common": "", "symfony/http-foundation": "", "symfony/intl": "", "symfony/yaml": "", @@ -43,7 +39,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } } } diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Escaper.php b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Escaper.php index 3576e9ae6faa4be62804c174c6b695dda80bd37f..f77545db9563264c9c3a9d01336ef991eb7ab9d3 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Escaper.php +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Escaper.php @@ -2,7 +2,6 @@ /* * This file is part of the Symfony package. - * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE @@ -72,7 +71,7 @@ public static function escapeWithDoubleQuotes($value) */ public static function requiresSingleQuoting($value) { - return preg_match('/[ \s \' " \: \{ \} \[ \] , & \* \# \?] | \A[ \- ? | < > = ! % @ ` ]/x', $value); + return preg_match('/[ \s \' " \: \{ \} \[ \] , & \* \# \?] | \A[ - ? | < > = ! % @ ` ]/x', $value); } /** diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Exception/ParseException.php b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Exception/ParseException.php index 938097b8b3e597f964ac76d29690a5ac098b905e..a27a005e6f551f82db049e61642df89889c41e70 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Exception/ParseException.php +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Exception/ParseException.php @@ -11,11 +11,6 @@ namespace Symfony\Component\Yaml\Exception; -if (!defined('JSON_UNESCAPED_UNICODE')) { - define('JSON_UNESCAPED_SLASHES', 64); - define('JSON_UNESCAPED_UNICODE', 256); -} - /** * Exception class thrown when an error occurs during parsing. * @@ -37,9 +32,9 @@ class ParseException extends RuntimeException * @param integer $parsedLine The line where the error occurred * @param integer $snippet The snippet of code near the problem * @param string $parsedFile The file name where the error occurred - * @param \Exception $previous The previous exception + * @param Exception $previous The previous exception */ - public function __construct($message, $parsedLine = -1, $snippet = null, $parsedFile = null, \Exception $previous = null) + public function __construct($message, $parsedLine = -1, $snippet = null, $parsedFile = null, Exception $previous = null) { $this->parsedFile = $parsedFile; $this->parsedLine = $parsedLine; @@ -130,7 +125,7 @@ private function updateRepr() } if (null !== $this->parsedFile) { - $this->message .= sprintf(' in %s', json_encode($this->parsedFile, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE)); + $this->message .= sprintf(' in %s', json_encode($this->parsedFile)); } if ($this->parsedLine >= 0) { diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Inline.php b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Inline.php index 45efced3c89acc62abe281b76711e68fb3125166..45978a12554a7663fe3b7669a778e41e00dc401d 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Inline.php +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Inline.php @@ -2,7 +2,6 @@ /* * This file is part of the Symfony package. - * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php index e8fe91848ebbdc8229e39842723b85840bbd983d..d852cbf9bcf1f260bd89036904ad68ea76b108b6 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Parser.php @@ -2,7 +2,6 @@ /* * This file is part of the Symfony package. - * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/README.md b/core/vendor/symfony/yaml/Symfony/Component/Yaml/README.md index 941a3460e317c769c889182bdca925a78a23f000..0864e49dca05ee3af6487e39234ef2f602333452 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/README.md +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/README.md @@ -15,5 +15,5 @@ Resources You can run the unit tests with the following command: $ cd path/to/Symfony/Component/Yaml/ - $ composer.phar install + $ composer.phar install --dev $ phpunit diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsBasicTests.yml b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsBasicTests.yml index ac0efa88d1a1bb7d510c54338a37e4905df68c4a..5542b0dc6326caf9855a3f2e86243780bd735adb 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsBasicTests.yml +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsBasicTests.yml @@ -56,7 +56,7 @@ 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 + list on a new line, with a colon seperating the key from its value. In YAML, this type of list is called a mapping. yaml: | diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsSpecificationExamples.yml b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsSpecificationExamples.yml index 1e59f3bf9888429752819aff27ebd52735cb714d..6f99f7545306020ae07ee6a610c5509a39079930 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsSpecificationExamples.yml +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsSpecificationExamples.yml @@ -222,7 +222,7 @@ yaml: | # Following node labeled SS - &SS Sammy Sosa rbi: - - *SS # Subsequent occurrence + - *SS # Subsequent occurance - Ken Griffey php: | array( diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsTypeTransfers.yml b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsTypeTransfers.yml index aac4e68077f679eacbd08e862777c22fa3127350..9972c1f0d9d528f090ddee99dc206d35c1826a22 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsTypeTransfers.yml +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/Fixtures/YtsTypeTransfers.yml @@ -226,11 +226,11 @@ brief: > time zone. yaml: | iso8601: 2001-12-14t21:59:43.10-05:00 - space separated: 2001-12-14 21:59:43.10 -05:00 + space seperated: 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" ) + 'space seperated' => mktime( 2001, 12, 14, 21, 59, 43, 0.10, "-05:00" ) ) --- test: Date diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/InlineTest.php b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/InlineTest.php index dc497ca21c7c81b83ef4c45938633797f0268b6d..a93b91612dcae9c85b7354bbdb6753e010ab8218 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/InlineTest.php +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/InlineTest.php @@ -11,6 +11,7 @@ namespace Symfony\Component\Yaml\Tests; +use Symfony\Component\Yaml\Yaml; use Symfony\Component\Yaml\Inline; class InlineTest extends \PHPUnit_Framework_TestCase @@ -30,11 +31,11 @@ public function testDump() $this->assertEquals($yaml, Inline::dump($value), sprintf('::dump() converts a PHP structure to an inline YAML (%s)', $yaml)); } - foreach ($this->getTestsForParse() as $value) { + foreach ($this->getTestsForParse() as $yaml => $value) { $this->assertEquals($value, Inline::parse(Inline::dump($value)), 'check consistency'); } - foreach ($testsForDump as $value) { + foreach ($testsForDump as $yaml => $value) { $this->assertEquals($value, Inline::parse(Inline::dump($value)), 'check consistency'); } } @@ -196,6 +197,7 @@ protected function getTestsForDump() '.Inf' => -log(0), '-.Inf' => log(0), "'686e444'" => '686e444', + '.Inf' => 646e444, '"foo\r\nbar"' => "foo\r\nbar", "'foo#bar'" => 'foo#bar', "'foo # bar'" => 'foo # bar', @@ -203,9 +205,6 @@ protected function getTestsForDump() "'a \"string\" with ''quoted strings inside'''" => 'a "string" with \'quoted strings inside\'', - "'-dash'" => '-dash', - "'-'" => '-', - // sequences '[foo, bar, false, null, 12]' => array('foo', 'bar', false, null, 12), '[\'foo,bar\', \'foo bar\']' => array('foo,bar', 'foo bar'), diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/ParseExceptionTest.php b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/ParseExceptionTest.php deleted file mode 100644 index 289965e8d967ef038562e96a458a64ea9d4e1cd7..0000000000000000000000000000000000000000 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Tests/ParseExceptionTest.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\Yaml\Tests; - -use Symfony\Component\Yaml\Exception\ParseException; -use Symfony\Component\Yaml\Yaml; - -class ParseExceptionTest extends \PHPUnit_Framework_TestCase -{ - public function testGetMessage() - { - $exception = new ParseException('Error message', 42, 'foo: bar', '/var/www/app/config.yml'); - if (version_compare(PHP_VERSION, '5.4.0', '>=')) { - $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()); - } -} diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Unescaper.php b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Unescaper.php index 1b8eeed57a94a6aefb037d68a43c7a71c89864f3..708f2a18f2851e36ce0e2e49dcf019d7404a3e89 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/Unescaper.php +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/Unescaper.php @@ -2,7 +2,6 @@ /* * This file is part of the Symfony package. - * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE @@ -49,7 +48,7 @@ public function unescapeSingleQuotedString($value) public function unescapeDoubleQuotedString($value) { $self = $this; - $callback = function ($match) use ($self) { + $callback = function($match) use ($self) { return $self->unescapeCharacter($match[0]); }; @@ -131,7 +130,7 @@ public function unescapeCharacter($value) * * @return string The string with the new encoding * - * @throws \RuntimeException if no suitable encoding function is found (iconv or mbstring) + * @throws RuntimeException if no suitable encoding function is found (iconv or mbstring) */ private function convertEncoding($value, $to, $from) { @@ -141,6 +140,6 @@ private function convertEncoding($value, $to, $from) return iconv($from, $to, $value); } - throw new \RuntimeException('No suitable convert encoding function (install the iconv or mbstring extension).'); + throw new RuntimeException('No suitable convert encoding function (install the iconv or mbstring extension).'); } } diff --git a/core/vendor/symfony/yaml/Symfony/Component/Yaml/composer.json b/core/vendor/symfony/yaml/Symfony/Component/Yaml/composer.json index 33c298535449cd0591202247a97348b06889c2e5..1a009c16d6a27bbca9c1dfdb21969a4897a431a0 100644 --- a/core/vendor/symfony/yaml/Symfony/Component/Yaml/composer.json +++ b/core/vendor/symfony/yaml/Symfony/Component/Yaml/composer.json @@ -25,7 +25,7 @@ "minimum-stability": "dev", "extra": { "branch-alias": { - "dev-master": "2.4-dev" + "dev-master": "2.3-dev" } } }