public function testCreateContentTypeStructValues(array $data) { /** @var $typeCreate \eZ\Publish\API\Repository\Values\ContentType\ContentTypeCreateStruct */ $typeCreate = $data['expected']; /** @var $contentType \eZ\Publish\Core\Repository\Values\ContentType\ContentType */ $contentType = $data['actual']; /** @var $groups \eZ\Publish\API\Repository\Values\ContentType\ContentTypeGroup[] */ $groups = $data['groups']; foreach ($typeCreate as $propertyName => $propertyValue) { switch ($propertyName) { case 'fieldDefinitions': $this->assertCreatedFieldDefinitionsCorrect($typeCreate->fieldDefinitions, $contentType->fieldDefinitions); break; case 'contentTypeGroups': $this->assertContentTypeGroupsCorrect($groups, $contentType->contentTypeGroups); break; default: $this->assertEquals($typeCreate->{$propertyName}, $contentType->{$propertyName}); break; } } $this->assertContentTypeGroupsCorrect($groups, $contentType->contentTypeGroups); $this->assertNotNull($contentType->id); }