diff --git a/src/Symfony/Bridge/Doctrine/Tests/Form/ChoiceList/GenericEntityChoiceListTest.php b/src/Symfony/Bridge/Doctrine/Tests/Form/ChoiceList/GenericEntityChoiceListTest.php
index ebb7ed0e98..9aaf53cd6e 100644
--- a/src/Symfony/Bridge/Doctrine/Tests/Form/ChoiceList/GenericEntityChoiceListTest.php
+++ b/src/Symfony/Bridge/Doctrine/Tests/Form/ChoiceList/GenericEntityChoiceListTest.php
@@ -265,6 +265,23 @@ class GenericEntityChoiceListTest extends \PHPUnit_Framework_TestCase
);
$this->assertEquals(array(1, 2), $choiceList->getValuesForChoices(array($item1, $item2)));
+ }
+
+ public function testLegacyInitShorthandEntityName()
+ {
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
+ $item1 = new SingleIntIdEntity(1, 'Foo');
+ $item2 = new SingleIntIdEntity(2, 'Bar');
+
+ $this->em->persist($item1);
+ $this->em->persist($item2);
+
+ $choiceList = new EntityChoiceList(
+ $this->em,
+ 'SymfonyTestsDoctrine:SingleIntIdEntity'
+ );
+
$this->assertEquals(array(1, 2), $choiceList->getIndicesForChoices(array($item1, $item2)));
}
}
diff --git a/src/Symfony/Bridge/Doctrine/Tests/Form/ChoiceList/UnloadedEntityChoiceListSingleIntIdTest.php b/src/Symfony/Bridge/Doctrine/Tests/Form/ChoiceList/UnloadedEntityChoiceListSingleIntIdTest.php
index a876878415..3fdb978666 100644
--- a/src/Symfony/Bridge/Doctrine/Tests/Form/ChoiceList/UnloadedEntityChoiceListSingleIntIdTest.php
+++ b/src/Symfony/Bridge/Doctrine/Tests/Form/ChoiceList/UnloadedEntityChoiceListSingleIntIdTest.php
@@ -20,4 +20,9 @@ class UnloadedEntityChoiceListSingleIntIdTest extends AbstractEntityChoiceListSi
{
$this->markTestSkipped('Non-existing values are not detected for unloaded choice lists.');
}
+
+ public function testLegacyGetIndicesForValuesIgnoresNonExistingValues()
+ {
+ $this->markTestSkipped('Non-existing values are not detected for unloaded choice lists.');
+ }
}
diff --git a/src/Symfony/Bridge/Doctrine/Tests/Validator/Constraints/UniqueEntityValidatorTest.php b/src/Symfony/Bridge/Doctrine/Tests/Validator/Constraints/UniqueEntityValidatorTest.php
index cfc56b9b4c..b3398f35dc 100644
--- a/src/Symfony/Bridge/Doctrine/Tests/Validator/Constraints/UniqueEntityValidatorTest.php
+++ b/src/Symfony/Bridge/Doctrine/Tests/Validator/Constraints/UniqueEntityValidatorTest.php
@@ -23,7 +23,6 @@ use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntityValidator;
use Symfony\Component\Validator\Tests\Constraints\AbstractConstraintValidatorTest;
use Symfony\Component\Validator\Validation;
-use Symfony\Component\Validator\Validator;
use Doctrine\ORM\Tools\SchemaTool;
/**
diff --git a/src/Symfony/Bridge/Propel1/Tests/Form/ChoiceList/ModelChoiceListTest.php b/src/Symfony/Bridge/Propel1/Tests/Form/ChoiceList/ModelChoiceListTest.php
index 3b2ea0a8d2..53fb2c5d59 100644
--- a/src/Symfony/Bridge/Propel1/Tests/Form/ChoiceList/ModelChoiceListTest.php
+++ b/src/Symfony/Bridge/Propel1/Tests/Form/ChoiceList/ModelChoiceListTest.php
@@ -183,7 +183,6 @@ class ModelChoiceListTest extends Propel1TestCase
);
$this->assertEquals(array(1, 2), $choiceList->getValuesForChoices(array($item1, $item2)));
- $this->assertEquals(array(1, 2), $choiceList->getIndicesForChoices(array($item1, $item2)));
}
public function testDifferentEqualObjectsAreChoosen()
@@ -202,12 +201,58 @@ class ModelChoiceListTest extends Propel1TestCase
$choosenItem = new Item(1, 'Foo');
- $this->assertEquals(array(1), $choiceList->getIndicesForChoices(array($choosenItem)));
$this->assertEquals(array('1'), $choiceList->getValuesForChoices(array($choosenItem)));
}
- public function testGetIndicesForNullChoices()
+ public function testLegacygetIndicesForChoices()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
+ $item1 = new Item(1, 'Foo');
+ $item2 = new Item(2, 'Bar');
+
+ ItemQuery::$result = array(
+ $item1,
+ $item2,
+ );
+
+ $choiceList = new ModelChoiceList(
+ self::ITEM_CLASS,
+ 'value',
+ null,
+ null,
+ null,
+ null
+ );
+
+ $this->assertEquals(array(1, 2), $choiceList->getIndicesForChoices(array($item1, $item2)));
+ }
+
+ public function testLegacyDifferentEqualObjectsAreChoosen()
+ {
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
+ $item = new Item(1, 'Foo');
+
+ ItemQuery::$result = array(
+ $item,
+ );
+
+ $choiceList = new ModelChoiceList(
+ self::ITEM_CLASS,
+ 'value',
+ array($item)
+ );
+
+ $choosenItem = new Item(1, 'Foo');
+
+ $this->assertEquals(array(1), $choiceList->getIndicesForChoices(array($choosenItem)));
+ }
+
+ public function testLegacyGetIndicesForNullChoices()
+ {
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$item = new Item(1, 'Foo');
$choiceList = new ModelChoiceList(
self::ITEM_CLASS,
diff --git a/src/Symfony/Bridge/Twig/Tests/Extension/FormExtensionDivLayoutTest.php b/src/Symfony/Bridge/Twig/Tests/Extension/FormExtensionDivLayoutTest.php
index 1859964590..1c3214739a 100644
--- a/src/Symfony/Bridge/Twig/Tests/Extension/FormExtensionDivLayoutTest.php
+++ b/src/Symfony/Bridge/Twig/Tests/Extension/FormExtensionDivLayoutTest.php
@@ -36,7 +36,7 @@ class FormExtensionDivLayoutTest extends AbstractDivLayoutTest
'form_div_layout.html.twig',
'custom_widgets.html.twig',
));
- $renderer = new TwigRenderer($rendererEngine, $this->getMock('Symfony\Component\Form\Extension\Csrf\CsrfProvider\CsrfProviderInterface'));
+ $renderer = new TwigRenderer($rendererEngine, $this->getMock('Symfony\Component\Security\Csrf\CsrfTokenManagerInterface'));
$this->extension = new FormExtension($renderer);
diff --git a/src/Symfony/Bridge/Twig/Tests/Extension/FormExtensionTableLayoutTest.php b/src/Symfony/Bridge/Twig/Tests/Extension/FormExtensionTableLayoutTest.php
index 32cdeb49e6..47a29cd612 100644
--- a/src/Symfony/Bridge/Twig/Tests/Extension/FormExtensionTableLayoutTest.php
+++ b/src/Symfony/Bridge/Twig/Tests/Extension/FormExtensionTableLayoutTest.php
@@ -35,7 +35,7 @@ class FormExtensionTableLayoutTest extends AbstractTableLayoutTest
'form_table_layout.html.twig',
'custom_widgets.html.twig',
));
- $renderer = new TwigRenderer($rendererEngine, $this->getMock('Symfony\Component\Form\Extension\Csrf\CsrfProvider\CsrfProviderInterface'));
+ $renderer = new TwigRenderer($rendererEngine, $this->getMock('Symfony\Component\Security\Csrf\CsrfTokenManagerInterface'));
$this->extension = new FormExtension($renderer);
diff --git a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php
index 146ea2979d..489b446512 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php
@@ -15,6 +15,7 @@ use Symfony\Component\DependencyInjection\Alias;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Definition;
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
+use Symfony\Component\DependencyInjection\Reference;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Symfony\Component\Routing\Route;
use Symfony\Component\Routing\RouteCollection;
@@ -340,6 +341,23 @@ class XmlDescriptor extends Descriptor
$serviceXML->setAttribute('factory-method', $definition->getFactoryMethod());
}
+ if ($factory = $definition->getFactory()) {
+ $serviceXML->appendChild($factoryXML = $dom->createElement('factory'));
+
+ if (is_array($factory)) {
+ if ($factory[0] instanceof Reference) {
+ $factoryXML->setAttribute('service', (string) $factory[0]);
+ } elseif ($factory[0] instanceof Definition) {
+ throw new \InvalidArgumentException('Factory is not describable.');
+ } else {
+ $factoryXML->setAttribute('class', $factory[0]);
+ }
+ $factoryXML->setAttribute('method', $factory[1]);
+ } else {
+ $factoryXML->setAttribute('function', $factory);
+ }
+ }
+
$serviceXML->setAttribute('scope', $definition->getScope());
$serviceXML->setAttribute('public', $definition->isPublic() ? 'true' : 'false');
$serviceXML->setAttribute('synthetic', $definition->isSynthetic() ? 'true' : 'false');
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/ObjectsProvider.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/ObjectsProvider.php
index e342544f0d..9bc81ca58b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/ObjectsProvider.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/ObjectsProvider.php
@@ -15,6 +15,7 @@ use Symfony\Component\DependencyInjection\Alias;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Definition;
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
+use Symfony\Component\DependencyInjection\Reference;
use Symfony\Component\EventDispatcher\EventDispatcher;
use Symfony\Component\Routing\Route;
use Symfony\Component\Routing\RouteCollection;
@@ -98,8 +99,7 @@ class ObjectsProvider
->setLazy(true)
->setSynchronized(true)
->setAbstract(true)
- ->setFactoryClass('Full\\Qualified\\FactoryClass')
- ->setFactoryMethod('get'),
+ ->setFactory(array('Full\\Qualified\\FactoryClass', 'get')),
'definition_2' => $definition2
->setPublic(false)
->setSynthetic(true)
@@ -110,8 +110,7 @@ class ObjectsProvider
->addTag('tag1', array('attr1' => 'val1', 'attr2' => 'val2'))
->addTag('tag1', array('attr3' => 'val3'))
->addTag('tag2')
- ->setFactoryService('factory.service')
- ->setFactoryMethod('get'),
+ ->setFactory(array(new Reference('factory.service'), 'get')),
);
}
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml
index 16df428799..235035c871 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml
@@ -2,6 +2,8 @@
-
+
+
+
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.xml
index 4636803bfb..31b457e370 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.xml
@@ -2,8 +2,11 @@
-
-
+
+
+
+
+
val1
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.xml
index c755e70ce7..d6ac0b750b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.xml
@@ -1,6 +1,7 @@
-
+
+
val1
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.xml
index b0f6244487..be9d2f015b 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.xml
@@ -1,9 +1,13 @@
-
+
+
+
-
+
+
+
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml
index 75d0820244..3aa8ca35e7 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml
@@ -1,2 +1,4 @@
-
+
+
+
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.xml b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.xml
index dd3e2e06d7..f128e522e5 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.xml
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.xml
@@ -1,5 +1,6 @@
-
+
+
val1
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Templating/GlobalVariablesTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Templating/GlobalVariablesTest.php
index 1aec1cc521..3d1aa90414 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Templating/GlobalVariablesTest.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Templating/GlobalVariablesTest.php
@@ -26,8 +26,10 @@ class GlobalVariablesTest extends TestCase
$this->globals = new GlobalVariables($this->container);
}
- public function testGetSecurity()
+ public function testLegacyGetSecurity()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$securityContext = $this->getMock('Symfony\Component\Security\Core\SecurityContextInterface');
$this->assertNull($this->globals->getSecurity());
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Templating/Helper/SessionHelperTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Templating/Helper/SessionHelperTest.php
index 4bd043ed59..5517afdb73 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Templating/Helper/SessionHelperTest.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Templating/Helper/SessionHelperTest.php
@@ -12,33 +12,37 @@
namespace Symfony\Bundle\FrameworkBundle\Tests\Templating\Helper;
use Symfony\Component\HttpFoundation\Request;
+use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\HttpFoundation\Session\Session;
use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
use Symfony\Bundle\FrameworkBundle\Templating\Helper\SessionHelper;
class SessionHelperTest extends \PHPUnit_Framework_TestCase
{
- protected $request;
+ protected $requestStack;
protected function setUp()
{
- $this->request = new Request();
+ $request = new Request();
$session = new Session(new MockArraySessionStorage());
$session->set('foobar', 'bar');
$session->getFlashBag()->set('notice', 'bar');
- $this->request->setSession($session);
+ $request->setSession($session);
+
+ $this->requestStack = new RequestStack();
+ $this->requestStack->push($request);
}
protected function tearDown()
{
- $this->request = null;
+ $this->requestStack = null;
}
public function testFlash()
{
- $helper = new SessionHelper($this->request);
+ $helper = new SessionHelper($this->requestStack);
$this->assertTrue($helper->hasFlash('notice'));
@@ -47,13 +51,13 @@ class SessionHelperTest extends \PHPUnit_Framework_TestCase
public function testGetFlashes()
{
- $helper = new SessionHelper($this->request);
+ $helper = new SessionHelper($this->requestStack);
$this->assertEquals(array('notice' => array('bar')), $helper->getFlashes());
}
public function testGet()
{
- $helper = new SessionHelper($this->request);
+ $helper = new SessionHelper($this->requestStack);
$this->assertEquals('bar', $helper->get('foobar'));
$this->assertEquals('foo', $helper->get('bar', 'foo'));
@@ -63,7 +67,7 @@ class SessionHelperTest extends \PHPUnit_Framework_TestCase
public function testGetName()
{
- $helper = new SessionHelper($this->request);
+ $helper = new SessionHelper($this->requestStack);
$this->assertEquals('session', $helper->getName());
}
diff --git a/src/Symfony/Bundle/TwigBundle/Tests/TokenParser/RenderTokenParserTest.php b/src/Symfony/Bundle/TwigBundle/Tests/TokenParser/LegacyRenderTokenParserTest.php
similarity index 91%
rename from src/Symfony/Bundle/TwigBundle/Tests/TokenParser/RenderTokenParserTest.php
rename to src/Symfony/Bundle/TwigBundle/Tests/TokenParser/LegacyRenderTokenParserTest.php
index 55ebcd2566..3e415abf3e 100644
--- a/src/Symfony/Bundle/TwigBundle/Tests/TokenParser/RenderTokenParserTest.php
+++ b/src/Symfony/Bundle/TwigBundle/Tests/TokenParser/LegacyRenderTokenParserTest.php
@@ -15,8 +15,13 @@ use Symfony\Bundle\TwigBundle\Tests\TestCase;
use Symfony\Bundle\TwigBundle\TokenParser\RenderTokenParser;
use Symfony\Bundle\TwigBundle\Node\RenderNode;
-class RenderTokenParserTest extends TestCase
+class LegacyRenderTokenParserTest extends TestCase
{
+ public function setUp()
+ {
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
+ }
+
/**
* @dataProvider getTestsForRender
*/
diff --git a/src/Symfony/Component/ClassLoader/Tests/ApcUniversalClassLoaderTest.php b/src/Symfony/Component/ClassLoader/Tests/LegacyApcUniversalClassLoaderTest.php
similarity index 98%
rename from src/Symfony/Component/ClassLoader/Tests/ApcUniversalClassLoaderTest.php
rename to src/Symfony/Component/ClassLoader/Tests/LegacyApcUniversalClassLoaderTest.php
index 9755256c79..8a1f203118 100644
--- a/src/Symfony/Component/ClassLoader/Tests/ApcUniversalClassLoaderTest.php
+++ b/src/Symfony/Component/ClassLoader/Tests/LegacyApcUniversalClassLoaderTest.php
@@ -13,10 +13,12 @@ namespace Symfony\Component\ClassLoader\Tests;
use Symfony\Component\ClassLoader\ApcUniversalClassLoader;
-class ApcUniversalClassLoaderTest extends \PHPUnit_Framework_TestCase
+class LegacyApcUniversalClassLoaderTest extends \PHPUnit_Framework_TestCase
{
protected function setUp()
{
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
+
if (!extension_loaded('apc')) {
$this->markTestSkipped('The apc extension is not available.');
}
diff --git a/src/Symfony/Component/ClassLoader/Tests/UniversalClassLoaderTest.php b/src/Symfony/Component/ClassLoader/Tests/LegacyUniversalClassLoaderTest.php
similarity index 98%
rename from src/Symfony/Component/ClassLoader/Tests/UniversalClassLoaderTest.php
rename to src/Symfony/Component/ClassLoader/Tests/LegacyUniversalClassLoaderTest.php
index 6bd7e43621..f654f792fb 100644
--- a/src/Symfony/Component/ClassLoader/Tests/UniversalClassLoaderTest.php
+++ b/src/Symfony/Component/ClassLoader/Tests/LegacyUniversalClassLoaderTest.php
@@ -13,8 +13,13 @@ namespace Symfony\Component\ClassLoader\Tests;
use Symfony\Component\ClassLoader\UniversalClassLoader;
-class UniversalClassLoaderTest extends \PHPUnit_Framework_TestCase
+class LegacyUniversalClassLoaderTest extends \PHPUnit_Framework_TestCase
{
+ public function setUp()
+ {
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
+ }
+
/**
* @dataProvider getLoadClassTests
*/
diff --git a/src/Symfony/Component/Console/Tests/Input/StringInputTest.php b/src/Symfony/Component/Console/Tests/Input/StringInputTest.php
index b284320afc..fec26dc01f 100644
--- a/src/Symfony/Component/Console/Tests/Input/StringInputTest.php
+++ b/src/Symfony/Component/Console/Tests/Input/StringInputTest.php
@@ -39,8 +39,16 @@ class StringInputTest extends \PHPUnit_Framework_TestCase
$input = new StringInput('--foo=bar');
$input->bind($definition);
$this->assertEquals('bar', $input->getOption('foo'));
+ }
+
+ public function testLegacyInputOptionDefinitionInConstructor()
+ {
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
+ $definition = new InputDefinition(
+ array(new InputOption('foo', null, InputOption::VALUE_REQUIRED))
+ );
- // definition in constructor
$input = new StringInput('--foo=bar', $definition);
$this->assertEquals('bar', $input->getOption('foo'));
}
diff --git a/src/Symfony/Component/Debug/README.md b/src/Symfony/Component/Debug/README.md
index 18d6d8f9ee..70c460370b 100644
--- a/src/Symfony/Component/Debug/README.md
+++ b/src/Symfony/Component/Debug/README.md
@@ -24,7 +24,7 @@ if ('cli' !== php_sapi_name()) {
} elseif (!ini_get('log_errors') || ini_get('error_log')) {
ini_set('display_errors', 1);
}
-ErrorHandler::register($errorReportingLevel);
+ErrorHandler::register();
```
Note that the `Debug::enable()` call also registers the debug class loader
diff --git a/src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php b/src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
index af37e9d87a..8b1af3f16f 100644
--- a/src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
+++ b/src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
@@ -23,22 +23,6 @@ use Symfony\Component\Debug\Exception\ContextErrorException;
*/
class ErrorHandlerTest extends \PHPUnit_Framework_TestCase
{
- /**
- * @var int Error reporting level before running tests.
- */
- protected $errorReporting;
-
- public function setUp()
- {
- $this->errorReporting = error_reporting(E_ALL | E_STRICT);
- $this->iniSet('display_errors', '1');
- }
-
- public function tearDown()
- {
- error_reporting($this->errorReporting);
- }
-
public function testRegister()
{
$handler = ErrorHandler::register();
@@ -185,6 +169,8 @@ class ErrorHandlerTest extends \PHPUnit_Framework_TestCase
public function testHandleError()
{
+ $this->iniSet('error_reporting', -1);
+
try {
$handler = ErrorHandler::register();
$handler->throwAt(0, true);
@@ -368,8 +354,10 @@ class ErrorHandlerTest extends \PHPUnit_Framework_TestCase
}
}
- public function testDeprecatedInterface()
+ public function testLegacyInterface()
{
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
+
try {
$handler = ErrorHandler::register(0);
$this->assertFalse($handler->handle(0, 'foo', 'foo.php', 12, array()));
diff --git a/src/Symfony/Component/Debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php b/src/Symfony/Component/Debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php
index c77a8760d3..5e47dfc757 100644
--- a/src/Symfony/Component/Debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php
+++ b/src/Symfony/Component/Debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php
@@ -21,24 +21,38 @@ class ClassNotFoundFatalErrorHandlerTest extends \PHPUnit_Framework_TestCase
/**
* @dataProvider provideClassNotFoundData
*/
- public function testHandleClassNotFound($error, $translatedMessage, $autoloader = null)
+ public function testHandleClassNotFound($error, $translatedMessage)
{
- if ($autoloader) {
- // Unregister all autoloaders to ensure the custom provided
- // autoloader is the only one to be used during the test run.
- $autoloaders = spl_autoload_functions();
- array_map('spl_autoload_unregister', $autoloaders);
- spl_autoload_register($autoloader);
- }
+ $handler = new ClassNotFoundFatalErrorHandler();
+
+ $exception = $handler->handleError($error, new FatalErrorException('', 0, $error['type'], $error['file'], $error['line']));
+
+ $this->assertInstanceof('Symfony\Component\Debug\Exception\ClassNotFoundException', $exception);
+ $this->assertSame($translatedMessage, $exception->getMessage());
+ $this->assertSame($error['type'], $exception->getSeverity());
+ $this->assertSame($error['file'], $exception->getFile());
+ $this->assertSame($error['line'], $exception->getLine());
+ }
+
+ /**
+ * @dataProvider provideLegacyClassNotFoundData
+ */
+ public function testLegacyHandleClassNotFound($error, $translatedMessage, $autoloader)
+ {
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
+ // Unregister all autoloaders to ensure the custom provided
+ // autoloader is the only one to be used during the test run.
+ $autoloaders = spl_autoload_functions();
+ array_map('spl_autoload_unregister', $autoloaders);
+ spl_autoload_register($autoloader);
$handler = new ClassNotFoundFatalErrorHandler();
$exception = $handler->handleError($error, new FatalErrorException('', 0, $error['type'], $error['file'], $error['line']));
- if ($autoloader) {
- spl_autoload_unregister($autoloader);
- array_map('spl_autoload_register', $autoloaders);
- }
+ spl_autoload_unregister($autoloader);
+ array_map('spl_autoload_register', $autoloaders);
$this->assertInstanceof('Symfony\Component\Debug\Exception\ClassNotFoundException', $exception);
$this->assertSame($translatedMessage, $exception->getMessage());
@@ -49,14 +63,6 @@ class ClassNotFoundFatalErrorHandlerTest extends \PHPUnit_Framework_TestCase
public function provideClassNotFoundData()
{
- $prefixes = array('Symfony\Component\Debug\Exception\\' => realpath(__DIR__.'/../../Exception'));
-
- $symfonyAutoloader = new SymfonyClassLoader();
- $symfonyAutoloader->addPrefixes($prefixes);
-
- $symfonyUniversalClassLoader = new SymfonyUniversalClassLoader();
- $symfonyUniversalClassLoader->registerPrefixes($prefixes);
-
return array(
array(
array(
@@ -103,6 +109,20 @@ class ClassNotFoundFatalErrorHandlerTest extends \PHPUnit_Framework_TestCase
),
"Attempted to load class \"UndefinedFunctionException\" from namespace \"Foo\Bar\".\nDid you forget a \"use\" statement for \"Symfony\Component\Debug\Exception\UndefinedFunctionException\"?",
),
+ );
+ }
+
+ public function provideLegacyClassNotFoundData()
+ {
+ $prefixes = array('Symfony\Component\Debug\Exception\\' => realpath(__DIR__.'/../../Exception'));
+
+ $symfonyAutoloader = new SymfonyClassLoader();
+ $symfonyAutoloader->addPrefixes($prefixes);
+
+ $symfonyUniversalClassLoader = new SymfonyUniversalClassLoader();
+ $symfonyUniversalClassLoader->registerPrefixes($prefixes);
+
+ return array(
array(
array(
'type' => 1,
diff --git a/src/Symfony/Component/DependencyInjection/Compiler/AnalyzeServiceReferencesPass.php b/src/Symfony/Component/DependencyInjection/Compiler/AnalyzeServiceReferencesPass.php
index 40c6b23cad..c5ecb2d504 100644
--- a/src/Symfony/Component/DependencyInjection/Compiler/AnalyzeServiceReferencesPass.php
+++ b/src/Symfony/Component/DependencyInjection/Compiler/AnalyzeServiceReferencesPass.php
@@ -74,6 +74,9 @@ class AnalyzeServiceReferencesPass implements RepeatablePassInterface
if ($definition->getFactoryService()) {
$this->processArguments(array(new Reference($definition->getFactoryService())));
}
+ if (is_array($definition->getFactory())) {
+ $this->processArguments($definition->getFactory());
+ }
if (!$this->onlyConstructorArguments) {
$this->processArguments($definition->getMethodCalls());
@@ -81,9 +84,6 @@ class AnalyzeServiceReferencesPass implements RepeatablePassInterface
if ($definition->getConfigurator()) {
$this->processArguments(array($definition->getConfigurator()));
}
- if ($definition->getFactory()) {
- $this->processArguments(array($definition->getFactory()));
- }
}
}
@@ -115,6 +115,9 @@ class AnalyzeServiceReferencesPass implements RepeatablePassInterface
$this->processArguments($argument->getMethodCalls());
$this->processArguments($argument->getProperties());
+ if (is_array($argument->getFactory())) {
+ $this->processArguments($argument->getFactory());
+ }
if ($argument->getFactoryService()) {
$this->processArguments(array(new Reference($argument->getFactoryService())));
}
diff --git a/src/Symfony/Component/DependencyInjection/Compiler/InlineServiceDefinitionsPass.php b/src/Symfony/Component/DependencyInjection/Compiler/InlineServiceDefinitionsPass.php
index 102e9331cd..9d3a781420 100644
--- a/src/Symfony/Component/DependencyInjection/Compiler/InlineServiceDefinitionsPass.php
+++ b/src/Symfony/Component/DependencyInjection/Compiler/InlineServiceDefinitionsPass.php
@@ -144,6 +144,10 @@ class InlineServiceDefinitionsPass implements RepeatablePassInterface
return false;
}
+ if (count($ids) > 1 && is_array($factory = $definition->getFactory()) && ($factory[0] instanceof Reference || $factory[0] instanceof Definition)) {
+ return false;
+ }
+
if (count($ids) > 1 && $definition->getFactoryService()) {
return false;
}
diff --git a/src/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php b/src/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php
index 032d27aaee..c1db3e04d6 100644
--- a/src/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php
+++ b/src/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php
@@ -81,11 +81,9 @@ class ResolveDefinitionTemplatesPass implements CompilerPassInterface
$def->setArguments($parentDef->getArguments());
$def->setMethodCalls($parentDef->getMethodCalls());
$def->setProperties($parentDef->getProperties());
- if (null !== $parentDef->getFactoryMethod()) {
- $def->setFactoryClass($parentDef->getFactoryClass());
- $def->setFactoryMethod($parentDef->getFactoryMethod());
- $def->setFactoryService($parentDef->getFactoryService());
- }
+ $def->setFactoryClass($parentDef->getFactoryClass());
+ $def->setFactoryMethod($parentDef->getFactoryMethod());
+ $def->setFactoryService($parentDef->getFactoryService());
$def->setFactory($parentDef->getFactory());
$def->setConfigurator($parentDef->getConfigurator());
$def->setFile($parentDef->getFile());
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/AnalyzeServiceReferencesPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/AnalyzeServiceReferencesPassTest.php
index 36130abceb..04fe7c2cf1 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/AnalyzeServiceReferencesPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/AnalyzeServiceReferencesPassTest.php
@@ -87,7 +87,7 @@ class AnalyzeServiceReferencesPassTest extends \PHPUnit_Framework_TestCase
;
$factory = new Definition();
- $factory->setFactoryService('a');
+ $factory->setFactory(array(new Reference('a'), 'a'));
$container
->register('b')
@@ -124,13 +124,11 @@ class AnalyzeServiceReferencesPassTest extends \PHPUnit_Framework_TestCase
$container
->register('foo', 'stdClass')
- ->setFactoryClass('stdClass')
- ->setFactoryMethod('getInstance');
+ ->setFactory(array('stdClass', 'getInstance'));
$container
->register('bar', 'stdClass')
- ->setFactoryService('foo')
- ->setFactoryMethod('getInstance');
+ ->setFactory(array(new Reference('foo'), 'getInstance'));
$graph = $this->process($container);
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckCircularReferencesPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckCircularReferencesPassTest.php
index 98a600b9c0..55351e551c 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckCircularReferencesPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckCircularReferencesPassTest.php
@@ -53,13 +53,11 @@ class CheckCircularReferencesPassTest extends \PHPUnit_Framework_TestCase
$container
->register('a', 'stdClass')
- ->setFactoryService('b')
- ->setFactoryMethod('getInstance');
+ ->setFactory(array(new Reference('b'), 'getInstance'));
$container
->register('b', 'stdClass')
- ->setFactoryService('a')
- ->setFactoryMethod('getInstance');
+ ->setFactory(array(new Reference('a'), 'getInstance'));
$this->process($container);
}
@@ -88,8 +86,7 @@ class CheckCircularReferencesPassTest extends \PHPUnit_Framework_TestCase
$container
->register('b', 'stdClass')
- ->setFactoryService('c')
- ->setFactoryMethod('getInstance');
+ ->setFactory(array(new Reference('c'), 'getInstance'));
$container->register('c')->addArgument(new Reference('a'));
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/InlineServiceDefinitionsPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/InlineServiceDefinitionsPassTest.php
index fc404467a6..590ca4cfae 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/InlineServiceDefinitionsPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/InlineServiceDefinitionsPassTest.php
@@ -118,7 +118,7 @@ class InlineServiceDefinitionsPassTest extends \PHPUnit_Framework_TestCase
$b = $container
->register('b')
->setPublic(false)
- ->setFactoryService('a')
+ ->setFactory(array(new Reference('a'), 'a'))
;
$container
@@ -142,7 +142,7 @@ class InlineServiceDefinitionsPassTest extends \PHPUnit_Framework_TestCase
$container
->register('b')
->setPublic(false)
- ->setFactoryService('a')
+ ->setFactory(array(new Reference('a'), 'a'))
;
$container
@@ -168,12 +168,12 @@ class InlineServiceDefinitionsPassTest extends \PHPUnit_Framework_TestCase
$container
->register('b')
->setPublic(false)
- ->setFactoryService('a')
+ ->setFactory(array(new Reference('a'), 'a'))
;
$inlineFactory = new Definition();
$inlineFactory->setPublic(false);
- $inlineFactory->setFactoryService('b');
+ $inlineFactory->setFactory(array(new Reference('b'), 'b'));
$container
->register('foo')
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/RemoveUnusedDefinitionsPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/RemoveUnusedDefinitionsPassTest.php
index 490f38aeef..82149ebdb3 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/RemoveUnusedDefinitionsPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/RemoveUnusedDefinitionsPassTest.php
@@ -86,14 +86,12 @@ class RemoveUnusedDefinitionsPassTest extends \PHPUnit_Framework_TestCase
$container
->register('foo', 'stdClass')
- ->setFactoryClass('stdClass')
- ->setFactoryMethod('getInstance')
+ ->setFactory(array('stdClass', 'getInstance'))
->setPublic(false);
$container
->register('bar', 'stdClass')
- ->setFactoryService('foo')
- ->setFactoryMethod('getInstance')
+ ->setFactory(array(new Reference('foo'), 'getInstance'))
->setPublic(false);
$container
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/interfaces1.php b/src/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/interfaces1.php
deleted file mode 100644
index 27503a351c..0000000000
--- a/src/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/interfaces1.php
+++ /dev/null
@@ -1,25 +0,0 @@
-setParameter('cla', 'Fo');
-$container->setParameter('ss', 'Class');
-
-$definition = new Definition('%cla%o%ss%');
-$container->setDefinition('foo', $definition);
-
-return $container;
-
-if (!class_exists('FooClass')) {
- class FooClass
- {
- public $bar;
-
- public function setBar($bar)
- {
- $this->bar = $bar;
- }
- }
-}
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/interfaces2.php b/src/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/interfaces2.php
deleted file mode 100644
index a85190145e..0000000000
--- a/src/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/interfaces2.php
+++ /dev/null
@@ -1,34 +0,0 @@
-setDefinition('barFactory', $factoryDefinition);
-
-$definition = new Definition();
-$definition->setFactoryService('barFactory');
-$definition->setFactoryMethod('createBarClass');
-$container->setDefinition('bar', $definition);
-
-return $container;
-
-class BarClass
-{
- public $foo;
-
- public function setBar($foo)
- {
- $this->foo = $foo;
- }
-}
-
-class BarClassFactory
-{
- public function createBarClass()
- {
- return new BarClass();
- }
-}
diff --git a/src/Symfony/Component/DependencyInjection/Tests/LegacyContainerBuilderTest.php b/src/Symfony/Component/DependencyInjection/Tests/LegacyContainerBuilderTest.php
index 496b621b6b..2f7b827d43 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/LegacyContainerBuilderTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/LegacyContainerBuilderTest.php
@@ -16,6 +16,11 @@ use Symfony\Component\DependencyInjection\Reference;
class LegacyContainerBuilderTest extends \PHPUnit_Framework_TestCase
{
+ public function setUp()
+ {
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+ }
+
/**
* @covers Symfony\Component\DependencyInjection\ContainerBuilder::createService
*/
diff --git a/src/Symfony/Component/EventDispatcher/Tests/EventTest.php b/src/Symfony/Component/EventDispatcher/Tests/EventTest.php
index 7a20fe6bf3..8f2fb7358e 100644
--- a/src/Symfony/Component/EventDispatcher/Tests/EventTest.php
+++ b/src/Symfony/Component/EventDispatcher/Tests/EventTest.php
@@ -60,24 +60,28 @@ class EventTest extends \PHPUnit_Framework_TestCase
$this->assertTrue($this->event->isPropagationStopped());
}
- public function testSetDispatcher()
+ public function testLegacySetDispatcher()
{
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
$this->event->setDispatcher($this->dispatcher);
$this->assertSame($this->dispatcher, $this->event->getDispatcher());
}
- public function testGetDispatcher()
+ public function testLegacyGetDispatcher()
{
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
$this->assertNull($this->event->getDispatcher());
}
- public function testGetName()
+ public function testLegacyGetName()
{
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
$this->assertNull($this->event->getName());
}
- public function testSetName()
+ public function testLegacySetName()
{
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
$this->event->setName('foo');
$this->assertEquals('foo', $this->event->getName());
}
diff --git a/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php b/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
index 116e6c898d..b705659e97 100644
--- a/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
+++ b/src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
@@ -62,7 +62,6 @@ class ChoiceType extends AbstractType
$placeholderView = new ChoiceView(null, '', $options['placeholder']);
// "placeholder" is a reserved index
- // see also ChoiceListInterface::getIndicesForChoices()
$this->addSubForms($builder, array('placeholder' => $placeholderView), $options);
}
diff --git a/src/Symfony/Component/Form/Extension/Core/Type/DateTimeType.php b/src/Symfony/Component/Form/Extension/Core/Type/DateTimeType.php
index d8b29d2a4a..252d370080 100644
--- a/src/Symfony/Component/Form/Extension/Core/Type/DateTimeType.php
+++ b/src/Symfony/Component/Form/Extension/Core/Type/DateTimeType.php
@@ -242,7 +242,7 @@ class DateTimeType extends AbstractType
// Don't add some defaults in order to preserve the defaults
// set in DateType and TimeType
- $resolver->setOptional(array(
+ $resolver->setDefined(array(
'empty_value', // deprecated
'placeholder',
'years',
diff --git a/src/Symfony/Component/Form/Extension/Core/Type/FormType.php b/src/Symfony/Component/Form/Extension/Core/Type/FormType.php
index dc8c60a947..a30de1df84 100644
--- a/src/Symfony/Component/Form/Extension/Core/Type/FormType.php
+++ b/src/Symfony/Component/Form/Extension/Core/Type/FormType.php
@@ -165,7 +165,7 @@ class FormType extends BaseType
// If data is given, the form is locked to that data
// (independent of its value)
- $resolver->setOptional(array(
+ $resolver->setDefined(array(
'data',
));
diff --git a/src/Symfony/Component/Form/Forms.php b/src/Symfony/Component/Form/Forms.php
index c949c1f48a..96ac45129f 100644
--- a/src/Symfony/Component/Form/Forms.php
+++ b/src/Symfony/Component/Form/Forms.php
@@ -55,39 +55,6 @@ use Symfony\Component\Form\Extension\Core\CoreExtension;
* ->getFormFactory();
*
*
- * Support for CSRF protection is provided by the CsrfExtension.
- * This extension needs a CSRF provider with a strong secret
- * (e.g. a 20 character long random string). The default
- * implementation for this is DefaultCsrfProvider:
- *
- *
- * use Symfony\Component\Form\Extension\Csrf\CsrfExtension;
- * use Symfony\Component\Form\Extension\Csrf\CsrfProvider\DefaultCsrfProvider;
- *
- * $secret = 'V8a5Z97e...';
- * $formFactory = Forms::createFormFactoryBuilder()
- * ->addExtension(new CsrfExtension(new DefaultCsrfProvider($secret)))
- * ->getFormFactory();
- *
- *
- * Support for the HttpFoundation is provided by the
- * HttpFoundationExtension. You are also advised to load the CSRF
- * extension with the driver for HttpFoundation's Session class:
- *
- *
- * use Symfony\Component\HttpFoundation\Session\Session;
- * use Symfony\Component\Form\Extension\HttpFoundation\HttpFoundationExtension;
- * use Symfony\Component\Form\Extension\Csrf\CsrfExtension;
- * use Symfony\Component\Form\Extension\Csrf\CsrfProvider\SessionCsrfProvider;
- *
- * $session = new Session();
- * $secret = 'V8a5Z97e...';
- * $formFactory = Forms::createFormFactoryBuilder()
- * ->addExtension(new HttpFoundationExtension())
- * ->addExtension(new CsrfExtension(new SessionCsrfProvider($session, $secret)))
- * ->getFormFactory();
- *
- *
* Support for the Validator component is provided by ValidatorExtension.
* This extension needs a validator object to function properly:
*
@@ -129,26 +96,6 @@ use Symfony\Component\Form\Extension\Core\CoreExtension;
* ->getFormFactory();
*
*
- * If you also loaded the CsrfExtension, you should pass the CSRF provider
- * to the extension so that you can render CSRF tokens in your templates
- * more easily:
- *
- *
- * use Symfony\Component\Form\Extension\Csrf\CsrfExtension;
- * use Symfony\Component\Form\Extension\Csrf\CsrfProvider\DefaultCsrfProvider;
- * use Symfony\Component\Form\Extension\Templating\TemplatingExtension;
- *
- *
- * $secret = 'V8a5Z97e...';
- * $csrfProvider = new DefaultCsrfProvider($secret);
- * $formFactory = Forms::createFormFactoryBuilder()
- * ->addExtension(new CsrfExtension($csrfProvider))
- * ->addExtension(new TemplatingExtension($engine, $csrfProvider, array(
- * 'FrameworkBundle:Form',
- * )))
- * ->getFormFactory();
- *
- *
* @author Bernhard Schussek
*/
final class Forms
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/AbstractChoiceListTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/AbstractChoiceListTest.php
index c762064e0b..f503b95622 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/AbstractChoiceListTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/AbstractChoiceListTest.php
@@ -161,63 +161,83 @@ abstract class AbstractChoiceListTest extends \PHPUnit_Framework_TestCase
$this->assertSame($this->values, $this->list->getValues());
}
- public function testGetIndicesForChoices()
+ public function testLegacyGetIndicesForChoices()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$choices = array($this->choice1, $this->choice2);
$this->assertSame(array($this->index1, $this->index2), $this->list->getIndicesForChoices($choices));
}
- public function testGetIndicesForChoicesPreservesKeys()
+ public function testLegacyGetIndicesForChoicesPreservesKeys()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$choices = array(5 => $this->choice1, 8 => $this->choice2);
$this->assertSame(array(5 => $this->index1, 8 => $this->index2), $this->list->getIndicesForChoices($choices));
}
- public function testGetIndicesForChoicesPreservesOrder()
+ public function testLegacyGetIndicesForChoicesPreservesOrder()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$choices = array($this->choice2, $this->choice1);
$this->assertSame(array($this->index2, $this->index1), $this->list->getIndicesForChoices($choices));
}
- public function testGetIndicesForChoicesIgnoresNonExistingChoices()
+ public function testLegacyGetIndicesForChoicesIgnoresNonExistingChoices()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$choices = array($this->choice1, $this->choice2, 'foobar');
$this->assertSame(array($this->index1, $this->index2), $this->list->getIndicesForChoices($choices));
}
- public function testGetIndicesForChoicesEmpty()
+ public function testLegacyGetIndicesForChoicesEmpty()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$this->assertSame(array(), $this->list->getIndicesForChoices(array()));
}
- public function testGetIndicesForValues()
+ public function testLegacyGetIndicesForValues()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
// values and indices are always the same
$values = array($this->value1, $this->value2);
$this->assertSame(array($this->index1, $this->index2), $this->list->getIndicesForValues($values));
}
- public function testGetIndicesForValuesPreservesKeys()
+ public function testLegacyGetIndicesForValuesPreservesKeys()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
// values and indices are always the same
$values = array(5 => $this->value1, 8 => $this->value2);
$this->assertSame(array(5 => $this->index1, 8 => $this->index2), $this->list->getIndicesForValues($values));
}
- public function testGetIndicesForValuesPreservesOrder()
+ public function testLegacyGetIndicesForValuesPreservesOrder()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$values = array($this->value2, $this->value1);
$this->assertSame(array($this->index2, $this->index1), $this->list->getIndicesForValues($values));
}
- public function testGetIndicesForValuesIgnoresNonExistingValues()
+ public function testLegacyGetIndicesForValuesIgnoresNonExistingValues()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$values = array($this->value1, $this->value2, 'foobar');
$this->assertSame(array($this->index1, $this->index2), $this->list->getIndicesForValues($values));
}
- public function testGetIndicesForValuesEmpty()
+ public function testLegacyGetIndicesForValuesEmpty()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$this->assertSame(array(), $this->list->getIndicesForValues(array()));
}
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/LazyChoiceListTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/LazyChoiceListTest.php
index bcd309e050..d4ff2124af 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/LazyChoiceListTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/LazyChoiceListTest.php
@@ -57,14 +57,18 @@ class LazyChoiceListTest extends \PHPUnit_Framework_TestCase
$this->assertEquals(array(0 => new ChoiceView('a', 'a', 'A'), 2 => new ChoiceView('c', 'c', 'C')), $this->list->getRemainingViews());
}
- public function testGetIndicesForChoices()
+ public function testLegacyGetIndicesForChoices()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$choices = array('b', 'c');
$this->assertSame(array(1, 2), $this->list->getIndicesForChoices($choices));
}
- public function testGetIndicesForValues()
+ public function testLegacyGetIndicesForValues()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$values = array('b', 'c');
$this->assertSame(array(1, 2), $this->list->getIndicesForValues($values));
}
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/ObjectChoiceListTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/ObjectChoiceListTest.php
index a05fb57c2f..c20ac1ce27 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/ObjectChoiceListTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/ObjectChoiceListTest.php
@@ -185,8 +185,10 @@ class ObjectChoiceListTest extends AbstractChoiceListTest
);
}
- public function testGetIndicesForChoicesWithValuePath()
+ public function testLegacyGetIndicesForChoicesWithValuePath()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$this->list = new ObjectChoiceList(
array($this->obj1, $this->obj2, $this->obj3, $this->obj4),
'name',
@@ -200,8 +202,10 @@ class ObjectChoiceListTest extends AbstractChoiceListTest
$this->assertSame(array($this->index1, $this->index2), $this->list->getIndicesForChoices($choices));
}
- public function testGetIndicesForChoicesWithValuePathPreservesKeys()
+ public function testLegacyGetIndicesForChoicesWithValuePathPreservesKeys()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$this->list = new ObjectChoiceList(
array($this->obj1, $this->obj2, $this->obj3, $this->obj4),
'name',
@@ -214,8 +218,10 @@ class ObjectChoiceListTest extends AbstractChoiceListTest
$this->assertSame(array(5 => $this->index1, 8 => $this->index2), $this->list->getIndicesForChoices($choices));
}
- public function testGetIndicesForChoicesWithValuePathPreservesOrder()
+ public function testLegacyGetIndicesForChoicesWithValuePathPreservesOrder()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$this->list = new ObjectChoiceList(
array($this->obj1, $this->obj2, $this->obj3, $this->obj4),
'name',
@@ -228,8 +234,10 @@ class ObjectChoiceListTest extends AbstractChoiceListTest
$this->assertSame(array($this->index2, $this->index1), $this->list->getIndicesForChoices($choices));
}
- public function testGetIndicesForChoicesWithValuePathIgnoresNonExistingChoices()
+ public function testLegacyGetIndicesForChoicesWithValuePathIgnoresNonExistingChoices()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$this->list = new ObjectChoiceList(
array($this->obj1, $this->obj2, $this->obj3, $this->obj4),
'name',
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/SimpleNumericChoiceListTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/SimpleNumericChoiceListTest.php
index fea0dad9ea..540ae16f74 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/SimpleNumericChoiceListTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/ChoiceList/SimpleNumericChoiceListTest.php
@@ -15,15 +15,19 @@ use Symfony\Component\Form\Extension\Core\ChoiceList\SimpleChoiceList;
class SimpleNumericChoiceListTest extends AbstractChoiceListTest
{
- public function testGetIndicesForChoicesDealsWithNumericChoices()
+ public function testLegacyGetIndicesForChoicesDealsWithNumericChoices()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
// Pass choices as strings although they are integers
$choices = array('0', '1');
$this->assertSame(array(0, 1), $this->list->getIndicesForChoices($choices));
}
- public function testGetIndicesForValuesDealsWithNumericValues()
+ public function testLegacyGetIndicesForValuesDealsWithNumericValues()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
// Pass values as strings although they are integers
$values = array('0', '1');
$this->assertSame(array(0, 1), $this->list->getIndicesForValues($values));
diff --git a/src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/DefaultCsrfProviderTest.php b/src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/LegacyDefaultCsrfProviderTest.php
similarity index 100%
rename from src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/DefaultCsrfProviderTest.php
rename to src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/LegacyDefaultCsrfProviderTest.php
diff --git a/src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/SessionCsrfProviderTest.php b/src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/LegacySessionCsrfProviderTest.php
similarity index 92%
rename from src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/SessionCsrfProviderTest.php
rename to src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/LegacySessionCsrfProviderTest.php
index 99e87158b5..018f80fa44 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/SessionCsrfProviderTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/LegacySessionCsrfProviderTest.php
@@ -13,13 +13,15 @@ namespace Symfony\Component\Form\Tests\Extension\Csrf\CsrfProvider;
use Symfony\Component\Form\Extension\Csrf\CsrfProvider\SessionCsrfProvider;
-class SessionCsrfProviderTest extends \PHPUnit_Framework_TestCase
+class LegacySessionCsrfProviderTest extends \PHPUnit_Framework_TestCase
{
protected $provider;
protected $session;
protected function setUp()
{
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
+
$this->session = $this->getMock(
'Symfony\Component\HttpFoundation\Session\Session',
array(),
diff --git a/src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorTest.php b/src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorTest.php
index 6b9a0fb6c1..727db21f76 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorTest.php
@@ -598,7 +598,7 @@ class FormValidatorTest extends AbstractConstraintValidatorTest
private function getMockExecutionContext()
{
- return $this->getMock('Symfony\Component\Validator\ExecutionContextInterface');
+ return $this->getMock('Symfony\Component\Validator\Context\ExecutionContextInterface');
}
/**
diff --git a/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php b/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php
index 5fa6255414..cb072deff6 100644
--- a/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php
+++ b/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php
@@ -19,6 +19,8 @@ class LegacyPdoSessionHandlerTest extends \PHPUnit_Framework_TestCase
protected function setUp()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
if (!class_exists('PDO') || !in_array('sqlite', \PDO::getAvailableDrivers())) {
$this->markTestSkipped('This test requires SQLite support in your environment');
}
diff --git a/src/Symfony/Component/HttpKernel/Tests/DataCollector/LoggerDataCollectorTest.php b/src/Symfony/Component/HttpKernel/Tests/DataCollector/LoggerDataCollectorTest.php
index 32f9eebed0..86d8812530 100644
--- a/src/Symfony/Component/HttpKernel/Tests/DataCollector/LoggerDataCollectorTest.php
+++ b/src/Symfony/Component/HttpKernel/Tests/DataCollector/LoggerDataCollectorTest.php
@@ -11,7 +11,6 @@
namespace Symfony\Component\HttpKernel\Tests\DataCollector;
-use Symfony\Component\Debug\ErrorHandler;
use Symfony\Component\HttpKernel\DataCollector\LoggerDataCollector;
class LoggerDataCollectorTest extends \PHPUnit_Framework_TestCase
diff --git a/src/Symfony/Component/HttpKernel/Tests/EventListener/ProfilerListenerTest.php b/src/Symfony/Component/HttpKernel/Tests/EventListener/ProfilerListenerTest.php
index b242ede446..c68f3af37b 100644
--- a/src/Symfony/Component/HttpKernel/Tests/EventListener/ProfilerListenerTest.php
+++ b/src/Symfony/Component/HttpKernel/Tests/EventListener/ProfilerListenerTest.php
@@ -11,6 +11,7 @@
namespace Symfony\Component\HttpKernel\Tests\EventListener;
+use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\HttpKernel\EventListener\ProfilerListener;
use Symfony\Component\HttpKernel\Event\FilterResponseEvent;
use Symfony\Component\HttpKernel\Event\GetResponseEvent;
@@ -23,11 +24,11 @@ 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()
+ public function testLegacyEventsWithoutRequestStack()
{
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
+
$profile = $this->getMockBuilder('Symfony\Component\HttpKernel\Profiler\Profile')
->disableOriginalConstructor()
->getMock();
@@ -86,15 +87,16 @@ class ProfilerListenerTest extends \PHPUnit_Framework_TestCase
->disableOriginalConstructor()
->getMock();
+ $requestStack = new RequestStack();
+ $requestStack->push($masterRequest);
+
$onlyException = true;
- $listener = new ProfilerListener($profiler, null, $onlyException);
+ $listener = new ProfilerListener($profiler, null, $onlyException, false, $requestStack);
// master request
- $listener->onKernelRequest(new GetResponseEvent($kernel, $masterRequest, Kernel::MASTER_REQUEST));
$listener->onKernelResponse(new FilterResponseEvent($kernel, $masterRequest, Kernel::MASTER_REQUEST, $response));
// sub request
- $listener->onKernelRequest(new GetResponseEvent($kernel, $subRequest, Kernel::SUB_REQUEST));
$listener->onKernelException(new GetResponseForExceptionEvent($kernel, $subRequest, Kernel::SUB_REQUEST, new HttpException(404)));
$listener->onKernelResponse(new FilterResponseEvent($kernel, $subRequest, Kernel::SUB_REQUEST, $response));
diff --git a/src/Symfony/Component/HttpKernel/Tests/EventListener/EsiListenerTest.php b/src/Symfony/Component/HttpKernel/Tests/EventListener/SurrogateListenerTest.php
similarity index 97%
rename from src/Symfony/Component/HttpKernel/Tests/EventListener/EsiListenerTest.php
rename to src/Symfony/Component/HttpKernel/Tests/EventListener/SurrogateListenerTest.php
index 9b0517d03e..1a0acf92fa 100644
--- a/src/Symfony/Component/HttpKernel/Tests/EventListener/EsiListenerTest.php
+++ b/src/Symfony/Component/HttpKernel/Tests/EventListener/SurrogateListenerTest.php
@@ -20,7 +20,7 @@ use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\EventDispatcher\EventDispatcher;
-class EsiListenerTest extends \PHPUnit_Framework_TestCase
+class SurrogateListenerTest extends \PHPUnit_Framework_TestCase
{
public function testFilterDoesNothingForSubRequests()
{
diff --git a/src/Symfony/Component/OptionsResolver/Tests/OptionsResolverTest.php b/src/Symfony/Component/OptionsResolver/Tests/LegacyOptionsResolverTest.php
similarity index 97%
rename from src/Symfony/Component/OptionsResolver/Tests/OptionsResolverTest.php
rename to src/Symfony/Component/OptionsResolver/Tests/LegacyOptionsResolverTest.php
index ef17670725..bc8411bfc2 100644
--- a/src/Symfony/Component/OptionsResolver/Tests/OptionsResolverTest.php
+++ b/src/Symfony/Component/OptionsResolver/Tests/LegacyOptionsResolverTest.php
@@ -14,10 +14,7 @@ namespace Symfony\Component\OptionsResolver\Tests;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\OptionsResolver\Options;
-/**
- * @deprecated Deprecated since Symfony 2.6, to be removed in Symfony 3.0.
- */
-class OptionsResolverTest extends \PHPUnit_Framework_TestCase
+class LegacyOptionsResolverTest extends \PHPUnit_Framework_TestCase
{
/**
* @var OptionsResolver
@@ -26,6 +23,8 @@ class OptionsResolverTest extends \PHPUnit_Framework_TestCase
protected function setUp()
{
+ $this->iniSet('error_reporting', -1 & ~E_USER_DEPRECATED);
+
$this->resolver = new OptionsResolver();
}
@@ -708,4 +707,16 @@ class OptionsResolverTest extends \PHPUnit_Framework_TestCase
'three' => '3',
), $clone->resolve());
}
+
+ public function testOverloadReturnsThis()
+ {
+ $this->assertSame($this->resolver, $this->resolver->overload('foo', 'bar'));
+ }
+
+ public function testOverloadCallsSet()
+ {
+ $this->resolver->overload('foo', 'bar');
+
+ $this->assertSame(array('foo' => 'bar'), $this->resolver->resolve());
+ }
}
diff --git a/src/Symfony/Component/OptionsResolver/Tests/OptionsTest.php b/src/Symfony/Component/OptionsResolver/Tests/LegacyOptionsTest.php
similarity index 98%
rename from src/Symfony/Component/OptionsResolver/Tests/OptionsTest.php
rename to src/Symfony/Component/OptionsResolver/Tests/LegacyOptionsTest.php
index d3c9958ec1..5f25a0cac2 100644
--- a/src/Symfony/Component/OptionsResolver/Tests/OptionsTest.php
+++ b/src/Symfony/Component/OptionsResolver/Tests/LegacyOptionsTest.php
@@ -14,10 +14,7 @@ namespace Symfony\Component\OptionsResolver\Tests;
use Symfony\Component\OptionsResolver\Options;
use Symfony\Component\OptionsResolver\OptionsResolver;
-/**
- * @deprecated Deprecated since Symfony 2.6, to be removed in Symfony 3.0.
- */
-class OptionsTest extends \PHPUnit_Framework_TestCase
+class LegacyOptionsTest extends \PHPUnit_Framework_TestCase
{
/**
* @var OptionsResolver
@@ -26,6 +23,8 @@ class OptionsTest extends \PHPUnit_Framework_TestCase
protected function setUp()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$this->options = new OptionsResolver();
}
diff --git a/src/Symfony/Component/OptionsResolver/Tests/OptionsResolver2Dot6Test.php b/src/Symfony/Component/OptionsResolver/Tests/OptionsResolver2Dot6Test.php
index 61fc1d9703..5d715c57a4 100644
--- a/src/Symfony/Component/OptionsResolver/Tests/OptionsResolver2Dot6Test.php
+++ b/src/Symfony/Component/OptionsResolver/Tests/OptionsResolver2Dot6Test.php
@@ -113,22 +113,6 @@ class OptionsResolver2Dot6Test extends \PHPUnit_Framework_TestCase
$this->assertTrue($this->resolver->hasDefault('foo'));
}
- ////////////////////////////////////////////////////////////////////////////
- // overload()
- ////////////////////////////////////////////////////////////////////////////
-
- public function testOverloadReturnsThis()
- {
- $this->assertSame($this->resolver, $this->resolver->overload('foo', 'bar'));
- }
-
- public function testOverloadCallsSet()
- {
- $this->resolver->overload('foo', 'bar');
-
- $this->assertSame(array('foo' => 'bar'), $this->resolver->resolve());
- }
-
////////////////////////////////////////////////////////////////////////////
// lazy setDefault()
////////////////////////////////////////////////////////////////////////////
diff --git a/src/Symfony/Component/Security/Core/SecurityContext.php b/src/Symfony/Component/Security/Core/SecurityContext.php
index 545d4cbd85..165c22ada6 100644
--- a/src/Symfony/Component/Security/Core/SecurityContext.php
+++ b/src/Symfony/Component/Security/Core/SecurityContext.php
@@ -70,8 +70,6 @@ class SecurityContext implements SecurityContextInterface
}
/**
- * @deprecated Deprecated since version 2.6, to be removed in 3.0. Use TokenStorageInterface::getToken() instead.
- *
* {@inheritdoc}
*/
public function getToken()
@@ -80,8 +78,6 @@ class SecurityContext implements SecurityContextInterface
}
/**
- * @deprecated Deprecated since version 2.6, to be removed in 3.0. Use TokenStorageInterface::setToken() instead.
- *
* {@inheritdoc}
*/
public function setToken(TokenInterface $token = null)
@@ -90,8 +86,6 @@ class SecurityContext implements SecurityContextInterface
}
/**
- * @deprecated Deprecated since version 2.6, to be removed in 3.0. Use AuthorizationCheckerInterface::isGranted() instead.
- *
* {@inheritdoc}
*/
public function isGranted($attributes, $object = null)
diff --git a/src/Symfony/Component/Security/Core/Tests/Validator/Constraints/UserPasswordValidatorTest.php b/src/Symfony/Component/Security/Core/Tests/Validator/Constraints/UserPasswordValidatorTest.php
index b47a45b9ca..7792913cb5 100644
--- a/src/Symfony/Component/Security/Core/Tests/Validator/Constraints/UserPasswordValidatorTest.php
+++ b/src/Symfony/Component/Security/Core/Tests/Validator/Constraints/UserPasswordValidatorTest.php
@@ -86,7 +86,8 @@ abstract class UserPasswordValidatorTest extends AbstractConstraintValidatorTest
$this->validator->validate('secret', $constraint);
- $this->assertViolation('myMessage');
+ $this->buildViolation('myMessage')
+ ->assertRaised();
}
/**
diff --git a/src/Symfony/Component/Security/Tests/Core/SecurityContextInterfaceTest.php b/src/Symfony/Component/Security/Tests/Core/LegacySecurityContextInterfaceTest.php
similarity index 85%
rename from src/Symfony/Component/Security/Tests/Core/SecurityContextInterfaceTest.php
rename to src/Symfony/Component/Security/Tests/Core/LegacySecurityContextInterfaceTest.php
index 09a459003b..764a43d37a 100644
--- a/src/Symfony/Component/Security/Tests/Core/SecurityContextInterfaceTest.php
+++ b/src/Symfony/Component/Security/Tests/Core/LegacySecurityContextInterfaceTest.php
@@ -14,15 +14,15 @@ namespace Symfony\Component\Security\Tests\Core;
use Symfony\Component\Security\Core\SecurityContextInterface;
use Symfony\Component\Security\Core\Security;
-class SecurityContextInterfaceTest extends \PHPUnit_Framework_TestCase
+class LegacySecurityContextInterfaceTest extends \PHPUnit_Framework_TestCase
{
/**
* Test if the BC Layer is working as intended
- *
- * @deprecated since version 2.6, to be removed in 3.0.
*/
public function testConstantSync()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$this->assertSame(Security::ACCESS_DENIED_ERROR, SecurityContextInterface::ACCESS_DENIED_ERROR);
$this->assertSame(Security::AUTHENTICATION_ERROR, SecurityContextInterface::AUTHENTICATION_ERROR);
$this->assertSame(Security::LAST_USERNAME, SecurityContextInterface::LAST_USERNAME);
diff --git a/src/Symfony/Component/Templating/Tests/Loader/LoaderTest.php b/src/Symfony/Component/Templating/Tests/Loader/LoaderTest.php
index e8a1388362..67e7b044e6 100644
--- a/src/Symfony/Component/Templating/Tests/Loader/LoaderTest.php
+++ b/src/Symfony/Component/Templating/Tests/Loader/LoaderTest.php
@@ -24,8 +24,10 @@ class LoaderTest extends \PHPUnit_Framework_TestCase
$this->assertSame($logger, $loader->getLogger(), '->setLogger() sets the logger instance');
}
- public function testGetSetDebugger()
+ public function testLegacyGetSetDebugger()
{
+ $this->iniSet('error_reporting', -1 & E_USER_DEPRECATED);
+
$loader = new ProjectTemplateLoader4();
$debugger = $this->getMock('Symfony\Component\Templating\DebuggerInterface');
$loader->setDebugger($debugger);
diff --git a/src/Symfony/Component/Validator/Constraints/GroupSequence.php b/src/Symfony/Component/Validator/Constraints/GroupSequence.php
index de5210285b..72bfb16d2c 100644
--- a/src/Symfony/Component/Validator/Constraints/GroupSequence.php
+++ b/src/Symfony/Component/Validator/Constraints/GroupSequence.php
@@ -55,6 +55,8 @@ use Symfony\Component\Validator\Exception\OutOfBoundsException;
* @author Bernhard Schussek
*
* @api
+ *
+ * Implementing \ArrayAccess, \IteratorAggregate and \Countable is @deprecated since 2.5 and will be removed in 3.0.
*/
class GroupSequence implements \ArrayAccess, \IteratorAggregate, \Countable
{
diff --git a/src/Symfony/Component/Validator/Constraints/Url.php b/src/Symfony/Component/Validator/Constraints/Url.php
index e867ee1f0a..7b8ef3fb62 100644
--- a/src/Symfony/Component/Validator/Constraints/Url.php
+++ b/src/Symfony/Component/Validator/Constraints/Url.php
@@ -24,5 +24,7 @@ use Symfony\Component\Validator\Constraint;
class Url extends Constraint
{
public $message = 'This value is not a valid URL.';
+ public $dnsMessage = 'The host could not be resolved.';
public $protocols = array('http', 'https');
+ public $checkDNS = false;
}
diff --git a/src/Symfony/Component/Validator/Constraints/UrlValidator.php b/src/Symfony/Component/Validator/Constraints/UrlValidator.php
index 3d184775ac..66b0c7bab9 100644
--- a/src/Symfony/Component/Validator/Constraints/UrlValidator.php
+++ b/src/Symfony/Component/Validator/Constraints/UrlValidator.php
@@ -62,6 +62,18 @@ class UrlValidator extends ConstraintValidator
$this->buildViolation($constraint->message)
->setParameter('{{ value }}', $this->formatValue($value))
->addViolation();
+
+ return;
+ }
+
+ if ($constraint->checkDNS) {
+ $host = parse_url($value, PHP_URL_HOST);
+
+ if (!checkdnsrr($host, 'ANY')) {
+ $this->buildViolation($constraint->dnsMessage)
+ ->setParameter('{{ value }}', $this->formatValue($host))
+ ->addViolation();
+ }
}
}
}
diff --git a/src/Symfony/Component/Validator/Resources/translations/validators.en.xlf b/src/Symfony/Component/Validator/Resources/translations/validators.en.xlf
index 346ad0fd34..c348f9fd15 100644
--- a/src/Symfony/Component/Validator/Resources/translations/validators.en.xlf
+++ b/src/Symfony/Component/Validator/Resources/translations/validators.en.xlf
@@ -302,6 +302,10 @@
An empty file is not allowed.
An empty file is not allowed.
+
+ The host could not be resolved.
+ The host could not be resolved.
+