aboutsummaryrefslogtreecommitdiffstats
path: root/library/symfony/options-resolver/Tests/LegacyOptionsTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'library/symfony/options-resolver/Tests/LegacyOptionsTest.php')
-rw-r--r--library/symfony/options-resolver/Tests/LegacyOptionsTest.php337
1 files changed, 0 insertions, 337 deletions
diff --git a/library/symfony/options-resolver/Tests/LegacyOptionsTest.php b/library/symfony/options-resolver/Tests/LegacyOptionsTest.php
deleted file mode 100644
index b65a09002..000000000
--- a/library/symfony/options-resolver/Tests/LegacyOptionsTest.php
+++ /dev/null
@@ -1,337 +0,0 @@
-<?php
-
-/*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Symfony\Component\OptionsResolver\Tests;
-
-use Symfony\Component\OptionsResolver\Options;
-use Symfony\Component\OptionsResolver\OptionsResolver;
-
-/**
- * @group legacy
- */
-class LegacyOptionsTest extends \PHPUnit_Framework_TestCase
-{
- /**
- * @var OptionsResolver
- */
- private $options;
-
- protected function setUp()
- {
- $this->options = new OptionsResolver();
- }
-
- public function testSetLazyOption()
- {
- $test = $this;
-
- $this->options->set('foo', function (Options $options) use ($test) {
- return 'dynamic';
- });
-
- $this->assertEquals(array('foo' => 'dynamic'), $this->options->resolve());
- }
-
- public function testOverloadKeepsPreviousValue()
- {
- $test = $this;
-
- // defined by superclass
- $this->options->set('foo', 'bar');
-
- // defined by subclass
- $this->options->overload('foo', function (Options $options, $previousValue) use ($test) {
- /* @var \PHPUnit_Framework_TestCase $test */
- $test->assertEquals('bar', $previousValue);
-
- return 'dynamic';
- });
-
- $this->assertEquals(array('foo' => 'dynamic'), $this->options->resolve());
- }
-
- public function testPreviousValueIsEvaluatedIfLazy()
- {
- $test = $this;
-
- // defined by superclass
- $this->options->set('foo', function (Options $options) {
- return 'bar';
- });
-
- // defined by subclass
- $this->options->overload('foo', function (Options $options, $previousValue) use ($test) {
- /* @var \PHPUnit_Framework_TestCase $test */
- $test->assertEquals('bar', $previousValue);
-
- return 'dynamic';
- });
-
- $this->assertEquals(array('foo' => 'dynamic'), $this->options->resolve());
- }
-
- public function testPreviousValueIsNotEvaluatedIfNoSecondArgument()
- {
- $test = $this;
-
- // defined by superclass
- $this->options->set('foo', function (Options $options) use ($test) {
- $test->fail('Should not be called');
- });
-
- // defined by subclass, no $previousValue argument defined!
- $this->options->overload('foo', function (Options $options) use ($test) {
- return 'dynamic';
- });
-
- $this->assertEquals(array('foo' => 'dynamic'), $this->options->resolve());
- }
-
- public function testLazyOptionCanAccessOtherOptions()
- {
- $test = $this;
-
- $this->options->set('foo', 'bar');
-
- $this->options->set('bam', function (Options $options) use ($test) {
- /* @var \PHPUnit_Framework_TestCase $test */
- $test->assertEquals('bar', $options->get('foo'));
-
- return 'dynamic';
- });
-
- $this->assertEquals(array('foo' => 'bar', 'bam' => 'dynamic'), $this->options->resolve());
- }
-
- public function testLazyOptionCanAccessOtherLazyOptions()
- {
- $test = $this;
-
- $this->options->set('foo', function (Options $options) {
- return 'bar';
- });
-
- $this->options->set('bam', function (Options $options) use ($test) {
- /* @var \PHPUnit_Framework_TestCase $test */
- $test->assertEquals('bar', $options->get('foo'));
-
- return 'dynamic';
- });
-
- $this->assertEquals(array('foo' => 'bar', 'bam' => 'dynamic'), $this->options->resolve());
- }
-
- public function testNormalizer()
- {
- $this->options->set('foo', 'bar');
-
- $this->options->setNormalizer('foo', function () {
- return 'normalized';
- });
-
- $this->assertEquals(array('foo' => 'normalized'), $this->options->resolve());
- }
-
- public function testNormalizerReceivesUnnormalizedValue()
- {
- $this->options->set('foo', 'bar');
-
- $this->options->setNormalizer('foo', function (Options $options, $value) {
- return 'normalized['.$value.']';
- });
-
- $this->assertEquals(array('foo' => 'normalized[bar]'), $this->options->resolve());
- }
-
- public function testNormalizerCanAccessOtherOptions()
- {
- $test = $this;
-
- $this->options->set('foo', 'bar');
- $this->options->set('bam', 'baz');
-
- $this->options->setNormalizer('bam', function (Options $options) use ($test) {
- /* @var \PHPUnit_Framework_TestCase $test */
- $test->assertEquals('bar', $options->get('foo'));
-
- return 'normalized';
- });
-
- $this->assertEquals(array('foo' => 'bar', 'bam' => 'normalized'), $this->options->resolve());
- }
-
- public function testNormalizerCanAccessOtherLazyOptions()
- {
- $test = $this;
-
- $this->options->set('foo', function (Options $options) {
- return 'bar';
- });
- $this->options->set('bam', 'baz');
-
- $this->options->setNormalizer('bam', function (Options $options) use ($test) {
- /* @var \PHPUnit_Framework_TestCase $test */
- $test->assertEquals('bar', $options->get('foo'));
-
- return 'normalized';
- });
-
- $this->assertEquals(array('foo' => 'bar', 'bam' => 'normalized'), $this->options->resolve());
- }
-
- /**
- * @expectedException \Symfony\Component\OptionsResolver\Exception\OptionDefinitionException
- */
- public function testFailForCyclicDependencies()
- {
- $this->options->set('foo', function (Options $options) {
- $options->get('bam');
- });
-
- $this->options->set('bam', function (Options $options) {
- $options->get('foo');
- });
-
- $this->options->resolve();
- }
-
- /**
- * @expectedException \Symfony\Component\OptionsResolver\Exception\OptionDefinitionException
- */
- public function testFailForCyclicDependenciesBetweenNormalizers()
- {
- $this->options->set('foo', 'bar');
- $this->options->set('bam', 'baz');
-
- $this->options->setNormalizer('foo', function (Options $options) {
- $options->get('bam');
- });
-
- $this->options->setNormalizer('bam', function (Options $options) {
- $options->get('foo');
- });
-
- $this->options->resolve();
- }
-
- /**
- * @expectedException \Symfony\Component\OptionsResolver\Exception\OptionDefinitionException
- */
- public function testFailForCyclicDependenciesBetweenNormalizerAndLazyOption()
- {
- $this->options->set('foo', function (Options $options) {
- $options->get('bam');
- });
- $this->options->set('bam', 'baz');
-
- $this->options->setNormalizer('bam', function (Options $options) {
- $options->get('foo');
- });
-
- $this->options->resolve();
- }
-
- public function testReplaceClearsAndSets()
- {
- $this->options->set('one', '1');
-
- $this->options->replace(array(
- 'two' => '2',
- 'three' => function (Options $options) {
- return '2' === $options['two'] ? '3' : 'foo';
- },
- ));
-
- $this->assertEquals(array(
- 'two' => '2',
- 'three' => '3',
- ), $this->options->resolve());
- }
-
- public function testClearRemovesAllOptions()
- {
- $this->options->set('one', 1);
- $this->options->set('two', 2);
-
- $this->options->clear();
-
- $this->assertEmpty($this->options->resolve());
- }
-
- public function testOverloadCannotBeEvaluatedLazilyWithoutExpectedClosureParams()
- {
- $this->options->set('foo', 'bar');
-
- $this->options->overload('foo', function () {
- return 'test';
- });
-
- $resolved = $this->options->resolve();
- $this->assertTrue(is_callable($resolved['foo']));
- }
-
- public function testOverloadCannotBeEvaluatedLazilyWithoutFirstParamTypeHint()
- {
- $this->options->set('foo', 'bar');
-
- $this->options->overload('foo', function ($object) {
- return 'test';
- });
-
- $resolved = $this->options->resolve();
- $this->assertTrue(is_callable($resolved['foo']));
- }
-
- public function testRemoveOptionAndNormalizer()
- {
- $this->options->set('foo1', 'bar');
- $this->options->setNormalizer('foo1', function (Options $options) {
- return '';
- });
- $this->options->set('foo2', 'bar');
- $this->options->setNormalizer('foo2', function (Options $options) {
- return '';
- });
-
- $this->options->remove('foo2');
- $this->assertEquals(array('foo1' => ''), $this->options->resolve());
- }
-
- public function testReplaceOptionAndNormalizer()
- {
- $this->options->set('foo1', 'bar');
- $this->options->setNormalizer('foo1', function (Options $options) {
- return '';
- });
- $this->options->set('foo2', 'bar');
- $this->options->setNormalizer('foo2', function (Options $options) {
- return '';
- });
-
- $this->options->replace(array('foo1' => 'new'));
- $this->assertEquals(array('foo1' => 'new'), $this->options->resolve());
- }
-
- public function testClearOptionAndNormalizer()
- {
- $this->options->set('foo1', 'bar');
- $this->options->setNormalizer('foo1', function (Options $options) {
- return '';
- });
- $this->options->set('foo2', 'bar');
- $this->options->setNormalizer('foo2', function (Options $options) {
- return '';
- });
-
- $this->options->clear();
- $this->assertEmpty($this->options->resolve());
- }
-}