Code Coverage
 
Classes and Traits
Functions and Methods
Lines
Total
0.00% covered (danger)
0.00%
0 / 1
14.29% covered (danger)
14.29%
1 / 7
CRAP
31.82% covered (danger)
31.82%
7 / 22
OptionsResolverWrapper
0.00% covered (danger)
0.00%
0 / 1
14.29% covered (danger)
14.29%
1 / 7
57.64
31.82% covered (danger)
31.82%
7 / 22
 setNormalizer
0.00% covered (danger)
0.00%
0 / 1
2.50
50.00% covered (danger)
50.00%
2 / 4
 setAllowedValues
0.00% covered (danger)
0.00%
0 / 1
2.50
50.00% covered (danger)
50.00%
2 / 4
 addAllowedValues
0.00% covered (danger)
0.00%
0 / 1
6
0.00% covered (danger)
0.00%
0 / 4
 setAllowedTypes
0.00% covered (danger)
0.00%
0 / 1
2.50
50.00% covered (danger)
50.00%
2 / 4
 addAllowedTypes
0.00% covered (danger)
0.00%
0 / 1
6
0.00% covered (danger)
0.00%
0 / 4
 resolve
0.00% covered (danger)
0.00%
0 / 1
2
0.00% covered (danger)
0.00%
0 / 1
 getUndefinedOptions
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
<?php
/*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
namespace Symfony\Component\Form\Util;
use Symfony\Component\OptionsResolver\Exception\AccessException;
use Symfony\Component\OptionsResolver\Exception\UndefinedOptionsException;
use Symfony\Component\OptionsResolver\OptionsResolver;
/**
 * @author Yonel Ceruto <yonelceruto@gmail.com>
 *
 * @internal
 */
class OptionsResolverWrapper extends OptionsResolver
{
    private $undefined = [];
    /**
     * @return $this
     */
    public function setNormalizer(string $option, \Closure $normalizer): self
    {
        try {
            parent::setNormalizer($option, $normalizer);
        } catch (UndefinedOptionsException $e) {
            $this->undefined[$option] = true;
        }
        return $this;
    }
    /**
     * @return $this
     */
    public function setAllowedValues(string $option, $allowedValues): self
    {
        try {
            parent::setAllowedValues($option, $allowedValues);
        } catch (UndefinedOptionsException $e) {
            $this->undefined[$option] = true;
        }
        return $this;
    }
    /**
     * @return $this
     */
    public function addAllowedValues(string $option, $allowedValues): self
    {
        try {
            parent::addAllowedValues($option, $allowedValues);
        } catch (UndefinedOptionsException $e) {
            $this->undefined[$option] = true;
        }
        return $this;
    }
    /**
     * @return $this
     */
    public function setAllowedTypes(string $option, $allowedTypes): self
    {
        try {
            parent::setAllowedTypes($option, $allowedTypes);
        } catch (UndefinedOptionsException $e) {
            $this->undefined[$option] = true;
        }
        return $this;
    }
    /**
     * @return $this
     */
    public function addAllowedTypes(string $option, $allowedTypes): self
    {
        try {
            parent::addAllowedTypes($option, $allowedTypes);
        } catch (UndefinedOptionsException $e) {
            $this->undefined[$option] = true;
        }
        return $this;
    }
    public function resolve(array $options = []): array
    {
        throw new AccessException('Resolve options is not supported.');
    }
    public function getUndefinedOptions(): array
    {
        return array_keys($this->undefined);
    }
}