mirror of
https://github.com/retailcrm/NelmioApiDocBundle.git
synced 2025-02-02 15:51:48 +03:00
Unified data types [actualType and subType]
Updated tests. JMS parsing fixes; updated {Validator,FormType}Parser, FOSRestHandler, and AbstractFormatter, and updated DataTypes enum. Modified dataType checking. Updated tests. Updated DataTypes enum. Quick fix and added doc comments. CS fixes. Refactored FormTypeParser to produce nested parameters. Updated tests accordingly. Logical and CS fixes. Sub-forms and more tests. Ignore data_class and always use form-type to avoid conflicts. Quick fix.
This commit is contained in:
parent
a2a4782af5
commit
3a31c93c94
@ -54,7 +54,7 @@ class Configuration implements ConfigurationInterface
|
|||||||
->addDefaultsIfNotSet()
|
->addDefaultsIfNotSet()
|
||||||
->beforeNormalization()
|
->beforeNormalization()
|
||||||
->ifString()
|
->ifString()
|
||||||
->then(function($v) { return array('default_format' => $v); })
|
->then(function ($v) { return array('default_format' => $v); })
|
||||||
->end()
|
->end()
|
||||||
->children()
|
->children()
|
||||||
->arrayNode('formats')
|
->arrayNode('formats')
|
||||||
|
@ -16,6 +16,9 @@ use Symfony\Component\Form\Exception\UnexpectedTypeException;
|
|||||||
use Symfony\Component\Form\Exception\InvalidArgumentException;
|
use Symfony\Component\Form\Exception\InvalidArgumentException;
|
||||||
use Symfony\Component\Form\Extension\Core\ChoiceList\ChoiceListInterface;
|
use Symfony\Component\Form\Extension\Core\ChoiceList\ChoiceListInterface;
|
||||||
use Symfony\Component\Form\Extension\Core\View\ChoiceView;
|
use Symfony\Component\Form\Extension\Core\View\ChoiceView;
|
||||||
|
use Symfony\Component\Form\Form;
|
||||||
|
use Symfony\Component\Form\FormInterface;
|
||||||
|
use Symfony\Component\Form\ResolvedFormTypeInterface;
|
||||||
use Symfony\Component\OptionsResolver\Exception\MissingOptionsException;
|
use Symfony\Component\OptionsResolver\Exception\MissingOptionsException;
|
||||||
use Symfony\Component\Form\FormFactoryInterface;
|
use Symfony\Component\Form\FormFactoryInterface;
|
||||||
use Symfony\Component\Form\Exception\FormException;
|
use Symfony\Component\Form\Exception\FormException;
|
||||||
@ -87,39 +90,73 @@ class FormTypeParser implements ParserInterface
|
|||||||
|
|
||||||
$form = $this->formFactory->create($type);
|
$form = $this->formFactory->create($type);
|
||||||
|
|
||||||
return $this->parseForm($form, array_key_exists('name', $item) ? $item['name'] : $form->getName());
|
$name = array_key_exists('name', $item) ? $item['name'] : $form->getName();
|
||||||
|
|
||||||
|
$options = null;
|
||||||
|
|
||||||
|
if (empty($name)) {
|
||||||
|
return $this->parseForm($form);
|
||||||
|
}
|
||||||
|
|
||||||
|
$subType = is_object($type) ? get_class($type) : $type;
|
||||||
|
|
||||||
|
if (class_exists($subType)) {
|
||||||
|
$parts = explode('\\', $subType);
|
||||||
|
$dataType = sprintf('object (%s)', end($parts));
|
||||||
|
} else {
|
||||||
|
$dataType = sprintf('object (%s)', $subType);
|
||||||
|
}
|
||||||
|
|
||||||
|
return array(
|
||||||
|
$name => array(
|
||||||
|
'required' => true,
|
||||||
|
'readonly' => false,
|
||||||
|
'description' => '',
|
||||||
|
'default' => null,
|
||||||
|
'dataType' => $dataType,
|
||||||
|
'actualType' => DataTypes::MODEL,
|
||||||
|
'subType' => $subType,
|
||||||
|
'children' => $this->parseForm($form),
|
||||||
|
),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function parseForm($form, $prefix = null)
|
private function parseForm($form)
|
||||||
{
|
{
|
||||||
$parameters = array();
|
$parameters = array();
|
||||||
foreach ($form as $name => $child) {
|
foreach ($form as $name => $child) {
|
||||||
$config = $child->getConfig();
|
$config = $child->getConfig();
|
||||||
|
$bestType = '';
|
||||||
|
|
||||||
if ($prefix) {
|
|
||||||
$name = sprintf('%s[%s]', $prefix, $name);
|
|
||||||
}
|
|
||||||
|
|
||||||
$bestType = '';
|
|
||||||
$actualType = null;
|
$actualType = null;
|
||||||
$subType = null;
|
$subType = null;
|
||||||
|
$children = null;
|
||||||
|
|
||||||
for ($type = $config->getType(); null !== $type; $type = $type->getParent()) {
|
for ($type = $config->getType();
|
||||||
|
$type instanceof FormInterface || $type instanceof ResolvedFormTypeInterface;
|
||||||
|
$type = $type->getParent()
|
||||||
|
) {
|
||||||
if (isset($this->mapTypes[$type->getName()])) {
|
if (isset($this->mapTypes[$type->getName()])) {
|
||||||
$bestType = $this->mapTypes[$type->getName()];
|
$bestType = $this->mapTypes[$type->getName()];
|
||||||
$actualType = $bestType;
|
$actualType = $bestType;
|
||||||
} elseif ('collection' === $type->getName()) {
|
} elseif ('collection' === $type->getName()) {
|
||||||
if (is_string($config->getOption('type')) && isset($this->mapTypes[$config->getOption('type')])) {
|
if (is_string($config->getOption('type')) && isset($this->mapTypes[$config->getOption('type')])) {
|
||||||
$subType = $this->mapTypes[$config->getOption('type')];
|
$subType = $this->mapTypes[$config->getOption('type')];
|
||||||
$actualType = DataTypes::COLLECTION;
|
$actualType = DataTypes::COLLECTION;
|
||||||
$bestType = sprintf('array of %ss', $subType);
|
$bestType = sprintf('array of %ss', $subType);
|
||||||
} else {
|
} else {
|
||||||
// Embedded form collection
|
// Embedded form collection
|
||||||
$subParameters = $this->parseForm($this->formFactory->create($config->getOption('type'), null, $config->getOption('options', array())), $name . '[]');
|
$type = $config->getOption('type');
|
||||||
$parameters = array_merge($parameters, $subParameters);
|
$subForm = $this->formFactory->create($type, null, $config->getOption('options', array()));
|
||||||
|
$children = $this->parseForm($subForm);
|
||||||
|
$actualType = DataTypes::COLLECTION;
|
||||||
|
$subType = is_object($type) ? get_class($type) : $type;
|
||||||
|
|
||||||
continue 2;
|
if (class_exists($subType)) {
|
||||||
|
$parts = explode('\\', $subType);
|
||||||
|
$bestType = sprintf('array of objects (%s)', end($parts));
|
||||||
|
} else {
|
||||||
|
$bestType = sprintf('array of objects (%s)', $subType);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -134,10 +171,27 @@ class FormTypeParser implements ParserInterface
|
|||||||
*/
|
*/
|
||||||
$addDefault = false;
|
$addDefault = false;
|
||||||
try {
|
try {
|
||||||
$subForm = $this->formFactory->create($type);
|
$subForm = $this->formFactory->create($type);
|
||||||
$subParameters = $this->parseForm($subForm, $name);
|
$subParameters = $this->parseForm($subForm, $name);
|
||||||
|
|
||||||
if (!empty($subParameters)) {
|
if (!empty($subParameters)) {
|
||||||
$parameters = array_merge($parameters, $subParameters);
|
$children = $subParameters;
|
||||||
|
$config = $subForm->getConfig();
|
||||||
|
$subType = get_class($type);
|
||||||
|
$parts = explode('\\', $subType);
|
||||||
|
$bestType = sprintf('object (%s)', end($parts));
|
||||||
|
|
||||||
|
$parameters[$name] = array(
|
||||||
|
'dataType' => $bestType,
|
||||||
|
'actualType' => DataTypes::MODEL,
|
||||||
|
'default' => null,
|
||||||
|
'subType' => $subType,
|
||||||
|
'required' => $config->getRequired(),
|
||||||
|
'description' => $config->getAttribute('description'),
|
||||||
|
'readonly' => $config->getDisabled(),
|
||||||
|
'children' => $children,
|
||||||
|
);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$addDefault = true;
|
$addDefault = true;
|
||||||
}
|
}
|
||||||
@ -147,12 +201,12 @@ class FormTypeParser implements ParserInterface
|
|||||||
|
|
||||||
if ($addDefault) {
|
if ($addDefault) {
|
||||||
$parameters[$name] = array(
|
$parameters[$name] = array(
|
||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => 'string',
|
'actualType' => 'string',
|
||||||
'default' => $config->getData(),
|
'default' => $config->getData(),
|
||||||
'required' => $config->getRequired(),
|
'required' => $config->getRequired(),
|
||||||
'description' => $config->getAttribute('description'),
|
'description' => $config->getAttribute('description'),
|
||||||
'readonly' => $config->getDisabled(),
|
'readonly' => $config->getDisabled(),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -162,17 +216,21 @@ class FormTypeParser implements ParserInterface
|
|||||||
}
|
}
|
||||||
|
|
||||||
$parameters[$name] = array(
|
$parameters[$name] = array(
|
||||||
'dataType' => $bestType,
|
'dataType' => $bestType,
|
||||||
'actualType' => $actualType,
|
'actualType' => $actualType,
|
||||||
'subType' => $subType,
|
'subType' => $subType,
|
||||||
'default' => $config->getData(),
|
'default' => $config->getData(),
|
||||||
'required' => $config->getRequired(),
|
'required' => $config->getRequired(),
|
||||||
'description' => $config->getAttribute('description'),
|
'description' => $config->getAttribute('description'),
|
||||||
'readonly' => $config->getDisabled(),
|
'readonly' => $config->getDisabled(),
|
||||||
);
|
);
|
||||||
|
|
||||||
switch ($actualType) {
|
if (null !== $children) {
|
||||||
case DataTypes::DATETIME:
|
$parameters[$name]['children'] = $children;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch ($bestType) {
|
||||||
|
case 'datetime':
|
||||||
if (($format = $config->getOption('date_format')) && is_string($format)) {
|
if (($format = $config->getOption('date_format')) && is_string($format)) {
|
||||||
$parameters[$name]['format'] = $format;
|
$parameters[$name]['format'] = $format;
|
||||||
} elseif ('single_text' == $config->getOption('widget') && $format = $config->getOption('format')) {
|
} elseif ('single_text' == $config->getOption('widget') && $format = $config->getOption('format')) {
|
||||||
@ -180,13 +238,13 @@ class FormTypeParser implements ParserInterface
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DataTypes::DATE:
|
case 'date':
|
||||||
if (($format = $config->getOption('format')) && is_string($format)) {
|
if (($format = $config->getOption('format')) && is_string($format)) {
|
||||||
$parameters[$name]['format'] = $format;
|
$parameters[$name]['format'] = $format;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case DataTypes::ENUM:
|
case 'choice':
|
||||||
if ($config->getOption('multiple')) {
|
if ($config->getOption('multiple')) {
|
||||||
$parameters[$name]['dataType'] = sprintf('array of %ss', $parameters[$name]['dataType']);
|
$parameters[$name]['dataType'] = sprintf('array of %ss', $parameters[$name]['dataType']);
|
||||||
$parameters[$name]['actualType'] = DataTypes::COLLECTION;
|
$parameters[$name]['actualType'] = DataTypes::COLLECTION;
|
||||||
@ -213,9 +271,10 @@ class FormTypeParser implements ParserInterface
|
|||||||
if (!class_exists($item)) {
|
if (!class_exists($item)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
$refl = new \ReflectionClass($item);
|
$refl = new \ReflectionClass($item);
|
||||||
|
|
||||||
return $refl->implementsInterface('Symfony\Component\Form\FormTypeInterface');
|
return $refl->implementsInterface('Symfony\Component\Form\FormTypeInterface') || $refl->implementsInterface('Symfony\Component\Form\ResolvedFormTypeInterface');
|
||||||
}
|
}
|
||||||
|
|
||||||
private function getTypeInstance($type)
|
private function getTypeInstance($type)
|
||||||
@ -230,6 +289,7 @@ class FormTypeParser implements ParserInterface
|
|||||||
|
|
||||||
return $this->formFactory->create($type);
|
return $this->formFactory->create($type);
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
return $this->formFactory->create($item);
|
return $this->formFactory->create($item);
|
||||||
} catch (UnexpectedTypeException $e) {
|
} catch (UnexpectedTypeException $e) {
|
||||||
|
@ -133,6 +133,7 @@ class JmsMetadataParser implements ParserInterface
|
|||||||
'actualType' => $dataType['actualType'],
|
'actualType' => $dataType['actualType'],
|
||||||
'subType' => $dataType['class'],
|
'subType' => $dataType['class'],
|
||||||
'required' => false,
|
'required' => false,
|
||||||
|
'default' => null,
|
||||||
//TODO: can't think of a good way to specify this one, JMS doesn't have a setting for this
|
//TODO: can't think of a good way to specify this one, JMS doesn't have a setting for this
|
||||||
'description' => $this->getDescription($item),
|
'description' => $this->getDescription($item),
|
||||||
'readonly' => $item->readOnly,
|
'readonly' => $item->readOnly,
|
||||||
|
@ -28,17 +28,17 @@ class ValidationParser implements ParserInterface, PostParserInterface
|
|||||||
protected $factory;
|
protected $factory;
|
||||||
|
|
||||||
protected $typeMap = array(
|
protected $typeMap = array(
|
||||||
'integer' => DataTypes::INTEGER,
|
'integer' => DataTypes::INTEGER,
|
||||||
'int' => DataTypes::INTEGER,
|
'int' => DataTypes::INTEGER,
|
||||||
'scalar' => DataTypes::STRING,
|
'scalar' => DataTypes::STRING,
|
||||||
'numeric' => DataTypes::INTEGER,
|
'numeric' => DataTypes::INTEGER,
|
||||||
'boolean' => DataTypes::BOOLEAN,
|
'boolean' => DataTypes::BOOLEAN,
|
||||||
'string' => DataTypes::STRING,
|
'string' => DataTypes::STRING,
|
||||||
'float' => DataTypes::FLOAT,
|
'float' => DataTypes::FLOAT,
|
||||||
'double' => DataTypes::FLOAT,
|
'double' => DataTypes::FLOAT,
|
||||||
'long' => DataTypes::INTEGER,
|
'long' => DataTypes::INTEGER,
|
||||||
'object' => DataTypes::MODEL,
|
'object' => DataTypes::MODEL,
|
||||||
'array' => DataTypes::COLLECTION,
|
'array' => DataTypes::COLLECTION,
|
||||||
'DateTime' => DataTypes::DATETIME,
|
'DateTime' => DataTypes::DATETIME,
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -159,7 +159,8 @@ class ValidationParser implements ParserInterface, PostParserInterface
|
|||||||
$class = substr(get_class($constraint), strlen('Symfony\\Component\\Validator\\Constraints\\'));
|
$class = substr(get_class($constraint), strlen('Symfony\\Component\\Validator\\Constraints\\'));
|
||||||
|
|
||||||
$vparams['actualType'] = DataTypes::STRING;
|
$vparams['actualType'] = DataTypes::STRING;
|
||||||
$vparams['subType'] = null;
|
$vparams['subType'] = null;
|
||||||
|
$vparams['default'] = null;
|
||||||
|
|
||||||
switch ($class) {
|
switch ($class) {
|
||||||
case 'NotBlank':
|
case 'NotBlank':
|
||||||
@ -243,10 +244,10 @@ class ValidationParser implements ParserInterface, PostParserInterface
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$vparams['dataType'] = sprintf("array of objects (%s)", end($exp));
|
$vparams['dataType'] = sprintf("array of objects (%s)", end($exp));
|
||||||
$vparams['actualType'] = DataTypes::COLLECTION;
|
$vparams['actualType'] = DataTypes::COLLECTION;
|
||||||
$vparams['subType'] = $nestedType;
|
$vparams['subType'] = $nestedType;
|
||||||
$vparams['class'] = $nestedType;
|
$vparams['class'] = $nestedType;
|
||||||
|
|
||||||
if (!in_array($nestedType, $visited)) {
|
if (!in_array($nestedType, $visited)) {
|
||||||
$visited[] = $nestedType;
|
$visited[] = $nestedType;
|
||||||
|
32
Tests/Fixtures/Form/CompoundType.php
Normal file
32
Tests/Fixtures/Form/CompoundType.php
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Nelmio\ApiDocBundle\Tests\Fixtures\Form;
|
||||||
|
|
||||||
|
use Symfony\Component\Form\AbstractType;
|
||||||
|
use Symfony\Component\Form\FormBuilderInterface;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class CompoundType
|
||||||
|
*
|
||||||
|
* @author Bez Hermoso <bez@activelamp.com>
|
||||||
|
*/
|
||||||
|
class CompoundType extends AbstractType
|
||||||
|
{
|
||||||
|
public function buildForm(FormBuilderInterface $builder, array $options)
|
||||||
|
{
|
||||||
|
$builder
|
||||||
|
->add('sub_form', new SimpleType())
|
||||||
|
->add('a', 'number')
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the name of this type.
|
||||||
|
*
|
||||||
|
* @return string The name of this type
|
||||||
|
*/
|
||||||
|
public function getName()
|
||||||
|
{
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
}
|
@ -1,10 +1,4 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
|
||||||
* Created by PhpStorm.
|
|
||||||
* User: Maxim_Romanovsky
|
|
||||||
* Date: 4/4/14
|
|
||||||
* Time: 11:00 AM
|
|
||||||
*/
|
|
||||||
|
|
||||||
namespace Nelmio\ApiDocBundle\Tests\Fixtures\Form;
|
namespace Nelmio\ApiDocBundle\Tests\Fixtures\Form;
|
||||||
|
|
||||||
|
38
Tests/Fixtures/Form/SimpleType.php
Normal file
38
Tests/Fixtures/Form/SimpleType.php
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Nelmio\ApiDocBundle\Tests\Fixtures\Form;
|
||||||
|
use Symfony\Component\Form\AbstractType;
|
||||||
|
use Symfony\Component\Form\FormBuilderInterface;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class SimpleType
|
||||||
|
*
|
||||||
|
* @author Bez Hermoso <bez@activelamp.com>
|
||||||
|
*/
|
||||||
|
class SimpleType extends AbstractType
|
||||||
|
{
|
||||||
|
public function buildForm(FormBuilderInterface $builder, array $options)
|
||||||
|
{
|
||||||
|
$builder->add('a', 'text', array(
|
||||||
|
'description' => 'Something that describes A.',
|
||||||
|
))
|
||||||
|
->add('b', 'number')
|
||||||
|
->add('c', 'choice', array(
|
||||||
|
'choices' => array('x' => 'X', 'y' => 'Y', 'z' => 'Z'),
|
||||||
|
))
|
||||||
|
->add('d', 'datetime')
|
||||||
|
->add('e', 'date')
|
||||||
|
->add('g', 'textarea')
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the name of this type.
|
||||||
|
*
|
||||||
|
* @return string The name of this type
|
||||||
|
*/
|
||||||
|
public function getName()
|
||||||
|
{
|
||||||
|
return 'simple';
|
||||||
|
}
|
||||||
|
}
|
@ -162,6 +162,11 @@ _create another test_
|
|||||||
|
|
||||||
#### Parameters ####
|
#### Parameters ####
|
||||||
|
|
||||||
|
dependency_type:
|
||||||
|
|
||||||
|
* type: object (dependency_type)
|
||||||
|
* required: true
|
||||||
|
|
||||||
dependency_type[a]:
|
dependency_type[a]:
|
||||||
|
|
||||||
* type: string
|
* type: string
|
||||||
@ -289,6 +294,10 @@ _Testing return_
|
|||||||
|
|
||||||
#### Response ####
|
#### Response ####
|
||||||
|
|
||||||
|
dependency_type:
|
||||||
|
|
||||||
|
* type: object (dependency_type)
|
||||||
|
|
||||||
dependency_type[a]:
|
dependency_type[a]:
|
||||||
|
|
||||||
* type: string
|
* type: string
|
||||||
|
@ -227,15 +227,25 @@ class SimpleFormatterTest extends WebTestCase
|
|||||||
'description' => 'create another test',
|
'description' => 'create another test',
|
||||||
'parameters' =>
|
'parameters' =>
|
||||||
array(
|
array(
|
||||||
'dependency_type[a]' =>
|
'dependency_type' => array(
|
||||||
array(
|
'dataType' => 'object (dependency_type)',
|
||||||
'dataType' => 'string',
|
'actualType' => DataTypes::MODEL,
|
||||||
'actualType' => DataTypes::STRING,
|
'subType' => 'dependency_type',
|
||||||
'subType' => null,
|
|
||||||
'default' => null,
|
'default' => null,
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'description' => 'A nice description',
|
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
|
'description' => '',
|
||||||
|
'children' => array(
|
||||||
|
'a' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => 'A nice description',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
'https' => false,
|
'https' => false,
|
||||||
@ -293,6 +303,7 @@ class SimpleFormatterTest extends WebTestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -304,6 +315,7 @@ class SimpleFormatterTest extends WebTestCase
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => true,
|
'readonly' => true,
|
||||||
@ -315,6 +327,7 @@ class SimpleFormatterTest extends WebTestCase
|
|||||||
'dataType' => 'double',
|
'dataType' => 'double',
|
||||||
'actualType' => DataTypes::FLOAT,
|
'actualType' => DataTypes::FLOAT,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -326,6 +339,7 @@ class SimpleFormatterTest extends WebTestCase
|
|||||||
'dataType' => 'array',
|
'dataType' => 'array',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -337,6 +351,7 @@ class SimpleFormatterTest extends WebTestCase
|
|||||||
'dataType' => 'object (JmsNested)',
|
'dataType' => 'object (JmsNested)',
|
||||||
'actualType' => DataTypes::MODEL,
|
'actualType' => DataTypes::MODEL,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -349,6 +364,7 @@ class SimpleFormatterTest extends WebTestCase
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => true,
|
'readonly' => true,
|
||||||
@ -360,6 +376,7 @@ class SimpleFormatterTest extends WebTestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -371,6 +388,7 @@ class SimpleFormatterTest extends WebTestCase
|
|||||||
'dataType' => 'array of integers',
|
'dataType' => 'array of integers',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => DataTypes::INTEGER,
|
'subType' => DataTypes::INTEGER,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => 'Epic description.
|
'description' => 'Epic description.
|
||||||
|
|
||||||
@ -384,6 +402,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'object (JmsNested)',
|
'dataType' => 'object (JmsNested)',
|
||||||
'actualType' => DataTypes::MODEL,
|
'actualType' => DataTypes::MODEL,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -395,6 +414,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'object (JmsTest)',
|
'dataType' => 'object (JmsTest)',
|
||||||
'actualType' => DataTypes::MODEL,
|
'actualType' => DataTypes::MODEL,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsTest',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsTest',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -407,6 +427,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -418,6 +439,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => true,
|
'readonly' => true,
|
||||||
@ -429,6 +451,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'double',
|
'dataType' => 'double',
|
||||||
'actualType' => DataTypes::FLOAT,
|
'actualType' => DataTypes::FLOAT,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -440,6 +463,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'array',
|
'dataType' => 'array',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -451,6 +475,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'object (JmsNested)',
|
'dataType' => 'object (JmsNested)',
|
||||||
'actualType' => DataTypes::MODEL,
|
'actualType' => DataTypes::MODEL,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -462,6 +487,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'array of objects (JmsNested)',
|
'dataType' => 'array of objects (JmsNested)',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -475,6 +501,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -486,6 +513,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -497,6 +525,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -510,6 +539,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'array of objects (JmsNested)',
|
'dataType' => 'array of objects (JmsNested)',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -529,15 +559,25 @@ With multiple lines.',
|
|||||||
'description' => 'Testing return',
|
'description' => 'Testing return',
|
||||||
'response' =>
|
'response' =>
|
||||||
array(
|
array(
|
||||||
'dependency_type[a]' =>
|
'dependency_type' => array(
|
||||||
array(
|
'dataType' => 'object (dependency_type)',
|
||||||
'dataType' => 'string',
|
'actualType' => DataTypes::MODEL,
|
||||||
'actualType' => DataTypes::STRING,
|
'subType' => 'dependency_type',
|
||||||
'subType' => null,
|
|
||||||
'default' => null,
|
'default' => null,
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'description' => 'A nice description',
|
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
|
'description' => '',
|
||||||
|
'children' => array(
|
||||||
|
'a' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => 'A nice description',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
'https' => false,
|
'https' => false,
|
||||||
@ -601,6 +641,7 @@ And, it supports multilines until the first \'@\' char.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -612,6 +653,7 @@ And, it supports multilines until the first \'@\' char.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => true,
|
'readonly' => true,
|
||||||
@ -623,6 +665,7 @@ And, it supports multilines until the first \'@\' char.',
|
|||||||
'dataType' => 'double',
|
'dataType' => 'double',
|
||||||
'actualType' => DataTypes::FLOAT,
|
'actualType' => DataTypes::FLOAT,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -634,6 +677,7 @@ And, it supports multilines until the first \'@\' char.',
|
|||||||
'dataType' => 'array',
|
'dataType' => 'array',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -645,6 +689,7 @@ And, it supports multilines until the first \'@\' char.',
|
|||||||
'dataType' => 'object (JmsNested)',
|
'dataType' => 'object (JmsNested)',
|
||||||
'actualType' => DataTypes::MODEL,
|
'actualType' => DataTypes::MODEL,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -657,6 +702,7 @@ And, it supports multilines until the first \'@\' char.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => true,
|
'readonly' => true,
|
||||||
@ -668,6 +714,7 @@ And, it supports multilines until the first \'@\' char.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -679,6 +726,7 @@ And, it supports multilines until the first \'@\' char.',
|
|||||||
'dataType' => 'array of integers',
|
'dataType' => 'array of integers',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => DataTypes::INTEGER,
|
'subType' => DataTypes::INTEGER,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => 'Epic description.
|
'description' => 'Epic description.
|
||||||
|
|
||||||
@ -692,6 +740,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'object (JmsNested)',
|
'dataType' => 'object (JmsNested)',
|
||||||
'actualType' => DataTypes::MODEL,
|
'actualType' => DataTypes::MODEL,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -703,6 +752,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'object (JmsTest)',
|
'dataType' => 'object (JmsTest)',
|
||||||
'actualType' => DataTypes::MODEL,
|
'actualType' => DataTypes::MODEL,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsTest',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsTest',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -715,6 +765,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -726,6 +777,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => true,
|
'readonly' => true,
|
||||||
@ -737,6 +789,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'double',
|
'dataType' => 'double',
|
||||||
'actualType' => DataTypes::FLOAT,
|
'actualType' => DataTypes::FLOAT,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -748,6 +801,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'array',
|
'dataType' => 'array',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -759,6 +813,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'object (JmsNested)',
|
'dataType' => 'object (JmsNested)',
|
||||||
'actualType' => DataTypes::MODEL,
|
'actualType' => DataTypes::MODEL,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -770,6 +825,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'array of objects (JmsNested)',
|
'dataType' => 'array of objects (JmsNested)',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -783,6 +839,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -794,6 +851,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -805,6 +863,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -818,6 +877,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'array of objects (JmsNested)',
|
'dataType' => 'array of objects (JmsNested)',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\JmsNested',
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -969,6 +1029,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => null,
|
'required' => null,
|
||||||
'readonly' => null
|
'readonly' => null
|
||||||
),
|
),
|
||||||
@ -976,6 +1037,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -986,6 +1048,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'array of objects (Test)',
|
'dataType' => 'array of objects (Test)',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\Test',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\Test',
|
||||||
|
'default' => null,
|
||||||
'readonly' => null,
|
'readonly' => null,
|
||||||
'required' => null,
|
'required' => null,
|
||||||
'children' => array(
|
'children' => array(
|
||||||
@ -993,6 +1056,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'format' => '{length: min: foo}, {not blank}',
|
'format' => '{length: min: foo}, {not blank}',
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'readonly' => null
|
'readonly' => null
|
||||||
@ -1001,6 +1065,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => null,
|
'required' => null,
|
||||||
'readonly' => null
|
'readonly' => null
|
||||||
)
|
)
|
||||||
@ -1050,6 +1115,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'default' => "DefaultTest",
|
'default' => "DefaultTest",
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
@ -1069,6 +1135,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => null,
|
'required' => null,
|
||||||
'readonly' => null
|
'readonly' => null
|
||||||
),
|
),
|
||||||
@ -1076,6 +1143,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -1086,6 +1154,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'array of objects (Test)',
|
'dataType' => 'array of objects (Test)',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\Test',
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Model\Test',
|
||||||
|
'default' => null,
|
||||||
'readonly' => null,
|
'readonly' => null,
|
||||||
'required' => null,
|
'required' => null,
|
||||||
'children' => array(
|
'children' => array(
|
||||||
@ -1093,6 +1162,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'format' => '{length: min: foo}, {not blank}',
|
'format' => '{length: min: foo}, {not blank}',
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'readonly' => null
|
'readonly' => null
|
||||||
@ -1101,6 +1171,7 @@ With multiple lines.',
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => null,
|
'required' => null,
|
||||||
'readonly' => null
|
'readonly' => null
|
||||||
)
|
)
|
||||||
|
@ -58,10 +58,10 @@ class FormTypeParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'boolean',
|
'dataType' => 'boolean',
|
||||||
'actualType' => DataTypes::BOOLEAN,
|
'actualType' => DataTypes::BOOLEAN,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
'default' => null
|
|
||||||
),
|
),
|
||||||
'd' => array(
|
'd' => array(
|
||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
@ -77,52 +77,74 @@ class FormTypeParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
array(
|
array(
|
||||||
array('class' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Form\CollectionType'),
|
array('class' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Form\CollectionType'),
|
||||||
array(
|
array(
|
||||||
'collection_type[a]' => array(
|
'collection_type' => array(
|
||||||
'dataType' => 'array of strings',
|
'dataType' => 'object (CollectionType)',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::MODEL,
|
||||||
'subType' => DataTypes::STRING,
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Form\CollectionType',
|
||||||
'required' => true,
|
|
||||||
'description' => '',
|
|
||||||
'default' => null,
|
|
||||||
'readonly' => false
|
|
||||||
),
|
|
||||||
'collection_type[b][][a]' => array(
|
|
||||||
'dataType' => 'string',
|
|
||||||
'actualType' => DataTypes::STRING,
|
|
||||||
'default' => null,
|
|
||||||
'subType' => null,
|
|
||||||
'required' => true,
|
|
||||||
'description' => 'A nice description',
|
|
||||||
'readonly' => false
|
|
||||||
),
|
|
||||||
'collection_type[b][][b]' => array(
|
|
||||||
'dataType' => 'string',
|
|
||||||
'actualType' => DataTypes::STRING,
|
|
||||||
'subType' => null,
|
|
||||||
'default' => null,
|
'default' => null,
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false
|
'readonly' => false,
|
||||||
|
'children' => array(
|
||||||
|
'a' => array(
|
||||||
|
'dataType' => 'array of strings',
|
||||||
|
'actualType' => DataTypes::COLLECTION,
|
||||||
|
'subType' => DataTypes::STRING,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'b' => array(
|
||||||
|
'dataType' => 'array of objects (TestType)',
|
||||||
|
'actualType' => DataTypes::COLLECTION,
|
||||||
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Form\TestType',
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
'children' => array(
|
||||||
|
'a' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'default' => null,
|
||||||
|
'subType' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => 'A nice description',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'b' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'default' => null,
|
||||||
|
'subType' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'c' => array(
|
||||||
|
'dataType' => 'boolean',
|
||||||
|
'actualType' => DataTypes::BOOLEAN,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'd' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'subType' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
'default' => "DefaultTest"
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
'collection_type[b][][c]' => array(
|
),
|
||||||
'dataType' => 'boolean',
|
|
||||||
'actualType' => DataTypes::BOOLEAN,
|
|
||||||
'default' => null,
|
|
||||||
'subType' => null,
|
|
||||||
'required' => true,
|
|
||||||
'description' => '',
|
|
||||||
'readonly' => false
|
|
||||||
),
|
|
||||||
'collection_type[b][][d]' => array(
|
|
||||||
'dataType' => 'string',
|
|
||||||
'actualType' => DataTypes::STRING,
|
|
||||||
'default' => "DefaultTest",
|
|
||||||
'subType' => null,
|
|
||||||
'required' => true,
|
|
||||||
'description' => '',
|
|
||||||
'readonly' => false
|
|
||||||
)
|
|
||||||
)
|
|
||||||
),
|
),
|
||||||
array(
|
array(
|
||||||
array(
|
array(
|
||||||
@ -133,49 +155,60 @@ class FormTypeParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'a' => array(
|
'a' => array(
|
||||||
'dataType' => 'array of strings',
|
'dataType' => 'array of strings',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'default' => null,
|
|
||||||
'subType' => DataTypes::STRING,
|
'subType' => DataTypes::STRING,
|
||||||
'required' => true,
|
|
||||||
'description' => '',
|
|
||||||
'readonly' => false
|
|
||||||
),
|
|
||||||
'b[][a]' => array(
|
|
||||||
'dataType' => 'string',
|
|
||||||
'actualType' => DataTypes::STRING,
|
|
||||||
'default' => null,
|
'default' => null,
|
||||||
'subType' => null,
|
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'description' => 'A nice description',
|
'description' => '',
|
||||||
'readonly' => false
|
'readonly' => false,
|
||||||
),
|
),
|
||||||
'b[][b]' => array(
|
'b' => array(
|
||||||
'dataType' => 'string',
|
'dataType' => 'array of objects (TestType)',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Form\TestType',
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
'default' => null,
|
'default' => null,
|
||||||
'subType' => null,
|
'readonly' => false,
|
||||||
'required' => true,
|
'children' => array(
|
||||||
'description' => '',
|
'a' => array(
|
||||||
'readonly' => false
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => 'A nice description',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'b' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'c' => array(
|
||||||
|
'dataType' => 'boolean',
|
||||||
|
'actualType' => DataTypes::BOOLEAN,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'd' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'subType' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
'default' => "DefaultTest"
|
||||||
|
),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
'b[][c]' => array(
|
),
|
||||||
'dataType' => 'boolean',
|
|
||||||
'actualType' => DataTypes::BOOLEAN,
|
|
||||||
'default' => null,
|
|
||||||
'subType' => null,
|
|
||||||
'required' => true,
|
|
||||||
'description' => '',
|
|
||||||
'readonly' => false
|
|
||||||
),
|
|
||||||
'b[][d]' => array(
|
|
||||||
'dataType' => 'string',
|
|
||||||
'actualType' => DataTypes::STRING,
|
|
||||||
'subType' => null,
|
|
||||||
'default' => "DefaultTest",
|
|
||||||
'required' => true,
|
|
||||||
'description' => '',
|
|
||||||
'readonly' => false
|
|
||||||
)
|
|
||||||
)
|
|
||||||
),
|
),
|
||||||
array(
|
array(
|
||||||
array(
|
array(
|
||||||
@ -190,45 +223,56 @@ class FormTypeParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'default' => null,
|
'default' => null,
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false
|
'readonly' => false,
|
||||||
),
|
),
|
||||||
'b[][a]' => array(
|
'b' => array(
|
||||||
'dataType' => 'string',
|
'dataType' => 'array of objects (TestType)',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => null,
|
'subType' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Form\TestType',
|
||||||
'default' => null,
|
|
||||||
'required' => true,
|
|
||||||
'description' => 'A nice description',
|
|
||||||
'readonly' => false
|
|
||||||
),
|
|
||||||
'b[][b]' => array(
|
|
||||||
'dataType' => 'string',
|
|
||||||
'actualType' => DataTypes::STRING,
|
|
||||||
'subType' => null,
|
|
||||||
'default' => null,
|
'default' => null,
|
||||||
'required' => true,
|
'required' => true,
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'readonly' => false
|
'readonly' => false,
|
||||||
|
'children' => array(
|
||||||
|
'a' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => 'A nice description',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'b' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'c' => array(
|
||||||
|
'dataType' => 'boolean',
|
||||||
|
'actualType' => DataTypes::BOOLEAN,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'd' => array(
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => DataTypes::STRING,
|
||||||
|
'subType' => null,
|
||||||
|
'default' => "DefaultTest",
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false
|
||||||
|
),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
'b[][c]' => array(
|
),
|
||||||
'dataType' => 'boolean',
|
|
||||||
'actualType' => DataTypes::BOOLEAN,
|
|
||||||
'subType' => null,
|
|
||||||
'default' => null,
|
|
||||||
'required' => true,
|
|
||||||
'description' => '',
|
|
||||||
'readonly' => false
|
|
||||||
),
|
|
||||||
'b[][d]' => array(
|
|
||||||
'dataType' => 'string',
|
|
||||||
'actualType' => DataTypes::STRING,
|
|
||||||
'subType' => null,
|
|
||||||
'default' => "DefaultTest",
|
|
||||||
'required' => true,
|
|
||||||
'description' => '',
|
|
||||||
'readonly' => false
|
|
||||||
)
|
|
||||||
)
|
|
||||||
),
|
),
|
||||||
array(
|
array(
|
||||||
array('class' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Form\ImprovedTestType'),
|
array('class' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Form\ImprovedTestType'),
|
||||||
@ -339,8 +383,97 @@ class FormTypeParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
'format' => json_encode(array('foo' => 'bar', 'baz' => 'Buzz')),
|
'format' => json_encode(array('foo' => 'bar', 'baz' => 'Buzz')),
|
||||||
),
|
),
|
||||||
)
|
),
|
||||||
),
|
),
|
||||||
|
array(
|
||||||
|
array('class' => 'Nelmio\ApiDocBundle\Tests\Fixtures\Form\CompoundType'),
|
||||||
|
array (
|
||||||
|
'sub_form' =>
|
||||||
|
array (
|
||||||
|
'dataType' => 'object (SimpleType)',
|
||||||
|
'actualType' => 'model',
|
||||||
|
'subType' => 'Nelmio\\ApiDocBundle\\Tests\\Fixtures\\Form\\SimpleType',
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
'children' =>
|
||||||
|
array (
|
||||||
|
'a' =>
|
||||||
|
array (
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => 'string',
|
||||||
|
'subType' => NULL,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => 'Something that describes A.',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'b' =>
|
||||||
|
array (
|
||||||
|
'dataType' => 'float',
|
||||||
|
'actualType' => 'float',
|
||||||
|
'subType' => NULL,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'c' =>
|
||||||
|
array (
|
||||||
|
'dataType' => 'choice',
|
||||||
|
'actualType' => 'choice',
|
||||||
|
'subType' => NULL,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
'format' => '{"x":"X","y":"Y","z":"Z"}',
|
||||||
|
),
|
||||||
|
'd' =>
|
||||||
|
array (
|
||||||
|
'dataType' => 'datetime',
|
||||||
|
'actualType' => 'datetime',
|
||||||
|
'subType' => NULL,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'e' =>
|
||||||
|
array (
|
||||||
|
'dataType' => 'date',
|
||||||
|
'actualType' => 'date',
|
||||||
|
'subType' => NULL,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
'g' =>
|
||||||
|
array (
|
||||||
|
'dataType' => 'string',
|
||||||
|
'actualType' => 'string',
|
||||||
|
'subType' => NULL,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
'a' =>
|
||||||
|
array (
|
||||||
|
'dataType' => 'float',
|
||||||
|
'actualType' => 'float',
|
||||||
|
'subType' => NULL,
|
||||||
|
'default' => null,
|
||||||
|
'required' => true,
|
||||||
|
'description' => '',
|
||||||
|
'readonly' => false,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -85,6 +85,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'DateTime',
|
'dataType' => 'DateTime',
|
||||||
'actualType' => DataTypes::DATETIME,
|
'actualType' => DataTypes::DATETIME,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -95,6 +96,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -105,6 +107,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'array of integers',
|
'dataType' => 'array of integers',
|
||||||
'actualType' => DataTypes::COLLECTION,
|
'actualType' => DataTypes::COLLECTION,
|
||||||
'subType' => DataTypes::INTEGER,
|
'subType' => DataTypes::INTEGER,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -164,6 +167,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -174,6 +178,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -184,6 +189,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -208,6 +214,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -218,6 +225,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -242,6 +250,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -252,6 +261,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -276,6 +286,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -286,6 +297,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -296,6 +308,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -355,6 +368,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -365,6 +379,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
@ -375,6 +390,7 @@ class JmsMetadataParserTest extends \PHPUnit_Framework_TestCase
|
|||||||
'dataType' => 'string',
|
'dataType' => 'string',
|
||||||
'actualType' => DataTypes::STRING,
|
'actualType' => DataTypes::STRING,
|
||||||
'subType' => null,
|
'subType' => null,
|
||||||
|
'default' => null,
|
||||||
'required' => false,
|
'required' => false,
|
||||||
'description' => null,
|
'description' => null,
|
||||||
'readonly' => false,
|
'readonly' => false,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user