name: CollectionTest class_comment: '# * @author Bernhard Schussek ' dependencies: - name: TestCase type: class source: PHPUnit\Framework\TestCase - name: Collection type: class source: Symfony\Component\Validator\Constraints\Collection - name: Email type: class source: Symfony\Component\Validator\Constraints\Email - name: Optional type: class source: Symfony\Component\Validator\Constraints\Optional - name: Required type: class source: Symfony\Component\Validator\Constraints\Required - name: Valid type: class source: Symfony\Component\Validator\Constraints\Valid - name: ConstraintDefinitionException type: class source: Symfony\Component\Validator\Exception\ConstraintDefinitionException - name: InvalidOptionsException type: class source: Symfony\Component\Validator\Exception\InvalidOptionsException properties: [] methods: - name: testEmptyConstraintListForField visibility: public parameters: - name: fieldConstraint comment: "# * @author Bernhard Schussek \n# */\n# class CollectionTest\ \ extends TestCase\n# {\n# public function testRejectNonConstraints()\n# {\n#\ \ $this->expectException(InvalidOptionsException::class);\n# new Collection([\n\ # 'foo' => 'bar',\n# ]);\n# }\n# \n# public function testRejectValidConstraint()\n\ # {\n# $this->expectException(ConstraintDefinitionException::class);\n# new Collection([\n\ # 'foo' => new Valid(),\n# ]);\n# }\n# \n# public function testRejectValidConstraintWithinOptional()\n\ # {\n# $this->expectException(ConstraintDefinitionException::class);\n# new Collection([\n\ # 'foo' => new Optional(new Valid()),\n# ]);\n# }\n# \n# public function testRejectValidConstraintWithinRequired()\n\ # {\n# $this->expectException(ConstraintDefinitionException::class);\n# new Collection([\n\ # 'foo' => new Required(new Valid()),\n# ]);\n# }\n# \n# public function testAcceptOptionalConstraintAsOneElementArray()\n\ # {\n# $collection1 = new Collection([\n# 'fields' => [\n# 'alternate_email' =>\ \ [\n# new Optional(new Email()),\n# ],\n# ],\n# ]);\n# \n# $collection2 = new\ \ Collection([\n# 'fields' => [\n# 'alternate_email' => new Optional(new Email()),\n\ # ],\n# ]);\n# \n# $this->assertEquals($collection1, $collection2);\n# }\n# \n\ # public function testAcceptRequiredConstraintAsOneElementArray()\n# {\n# $collection1\ \ = new Collection([\n# 'fields' => [\n# 'alternate_email' => [\n# new Required(new\ \ Email()),\n# ],\n# ],\n# ]);\n# \n# $collection2 = new Collection([\n# 'fields'\ \ => [\n# 'alternate_email' => new Required(new Email()),\n# ],\n# ]);\n# \n#\ \ $this->assertEquals($collection1, $collection2);\n# }\n# \n# public function\ \ testConstraintHasDefaultGroupWithOptionalValues()\n# {\n# $constraint = new\ \ Collection([\n# 'foo' => new Required(),\n# 'bar' => new Optional(),\n# ]);\n\ # \n# $this->assertEquals(['Default'], $constraint->groups);\n# $this->assertEquals(['Default'],\ \ $constraint->fields['foo']->groups);\n# $this->assertEquals(['Default'], $constraint->fields['bar']->groups);\n\ # }\n# \n# public function testOnlySomeKeysAreKnowOptions()\n# {\n# $constraint\ \ = new Collection([\n# 'fields' => [new Required()],\n# 'properties' => [new\ \ Required()],\n# 'catalog' => [new Optional()],\n# ]);\n# \n# $this->assertArrayHasKey('fields',\ \ $constraint->fields);\n# $this->assertInstanceOf(Required::class, $constraint->fields['fields']);\n\ # $this->assertArrayHasKey('properties', $constraint->fields);\n# $this->assertInstanceOf(Required::class,\ \ $constraint->fields['properties']);\n# $this->assertArrayHasKey('catalog', $constraint->fields);\n\ # $this->assertInstanceOf(Optional::class, $constraint->fields['catalog']);\n\ # }\n# \n# public function testAllKeysAreKnowOptions()\n# {\n# $constraint = new\ \ Collection([\n# 'fields' => [\n# 'fields' => [new Required()],\n# 'properties'\ \ => [new Required()],\n# 'catalog' => [new Optional()],\n# ],\n# 'allowExtraFields'\ \ => true,\n# 'extraFieldsMessage' => 'foo bar baz',\n# ]);\n# \n# $this->assertArrayHasKey('fields',\ \ $constraint->fields);\n# $this->assertInstanceOf(Required::class, $constraint->fields['fields']);\n\ # $this->assertArrayHasKey('properties', $constraint->fields);\n# $this->assertInstanceOf(Required::class,\ \ $constraint->fields['properties']);\n# $this->assertArrayHasKey('catalog', $constraint->fields);\n\ # $this->assertInstanceOf(Optional::class, $constraint->fields['catalog']);\n\ # \n# $this->assertTrue($constraint->allowExtraFields);\n# $this->assertSame('foo\ \ bar baz', $constraint->extraFieldsMessage);\n# }\n# \n# public function testEmptyFields()\n\ # {\n# $constraint = new Collection([], [], null, true, null, 'foo bar baz');\n\ # \n# $this->assertTrue($constraint->allowExtraFields);\n# $this->assertSame('foo\ \ bar baz', $constraint->extraFieldsMessage);\n# }\n# \n# public function testEmptyFieldsInOptions()\n\ # {\n# $constraint = new Collection([\n# 'fields' => [],\n# 'allowExtraFields'\ \ => true,\n# 'extraFieldsMessage' => 'foo bar baz',\n# ]);\n# \n# $this->assertSame([],\ \ $constraint->fields);\n# $this->assertTrue($constraint->allowExtraFields);\n\ # $this->assertSame('foo bar baz', $constraint->extraFieldsMessage);\n# }\n# \n\ # /**\n# * @testWith [[]]\n# * [null]" - name: testEmptyConstraintListForFieldInOptions visibility: public parameters: - name: fieldConstraint comment: '# * @testWith [[]] # * [null]' traits: - PHPUnit\Framework\TestCase - Symfony\Component\Validator\Constraints\Collection - Symfony\Component\Validator\Constraints\Email - Symfony\Component\Validator\Constraints\Optional - Symfony\Component\Validator\Constraints\Required - Symfony\Component\Validator\Constraints\Valid - Symfony\Component\Validator\Exception\ConstraintDefinitionException - Symfony\Component\Validator\Exception\InvalidOptionsException interfaces: []