Groups example

/** * @return bool */
    public function isLegacy()
    {
        if (!$this->originClass || (new \ReflectionClass($this->originClass))->isInternal()) {
            return false;
        }

        $method = $this->originatingMethod();
        $groups = class_exists(Groups::class, false) ? [new Groups(), 'groups'] : [Test::class, 'getGroups'];

        return 0 === strpos($method, 'testLegacy')
            || 0 === strpos($method, 'provideLegacy')
            || 0 === strpos($method, 'getLegacy')
            || strpos($this->originClass, '\Legacy')
            || \in_array('legacy', $groups($this->originClass, $method), true);
    }

    /** * @return bool */
    
use Symfony\Component\Serializer\Annotation\Groups;
use Symfony\Component\Serializer\Exception\InvalidArgumentException;

/** * @author Kévin Dunglas <dunglas@gmail.com> */
class GroupsTest extends TestCase
{
    public function testEmptyGroupsParameter()
    {
        $this->expectException(InvalidArgumentException::class);
        new Groups([]);
    }

    public function testInvalidGroupsParameter()
    {
        $this->expectException(InvalidArgumentException::class);
        new Groups(['a', 1, new \stdClass()]);
    }

    public function testGroupsParameters()
    {
        $validData = ['a', 'b'];

        
Home | Imprint | This part of the site doesn't use cookies.