mirror of
https://github.com/retailcrm/NelmioApiDocBundle.git
synced 2025-02-02 15:51:48 +03:00
Updated regex pattern to base on http://fr2.php.net/manual/en/language.oop5.basic.php
This commit is contained in:
parent
4b7dbcd478
commit
c56aceaef5
@ -378,7 +378,7 @@ class ApiDocExtractor
|
|||||||
/*
|
/*
|
||||||
* Match array<Fully\Qualified\ClassName> as alias; "as alias" optional.
|
* Match array<Fully\Qualified\ClassName> as alias; "as alias" optional.
|
||||||
*/
|
*/
|
||||||
if (preg_match_all("/^array<([A-Za-z]+[A-Za-z0-9_]*(?:\\\\[A-Za-z]+[A-Za-z0-9_]*)*)>(?:\\s+as\\s+(.+))?$/", $input['class'], $collectionData)) {
|
if (preg_match_all("/^array<([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*(?:\\\\[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)*)>(?:\\s+as\\s+(.+))?$/", $input['class'], $collectionData)) {
|
||||||
$input['class'] = $collectionData[1][0];
|
$input['class'] = $collectionData[1][0];
|
||||||
$input['collection'] = true;
|
$input['collection'] = true;
|
||||||
$input['collectionName'] = $collectionData[2][0];
|
$input['collectionName'] = $collectionData[2][0];
|
||||||
|
@ -44,7 +44,7 @@ class CollectionDirectiveTest extends \PHPUnit_Framework_TestCase
|
|||||||
}
|
}
|
||||||
),
|
),
|
||||||
'test_simple_notation_with_namespaces' => array(
|
'test_simple_notation_with_namespaces' => array(
|
||||||
'array<Vendor0_2\\Namespace1\\Namespace_2\\User>',
|
'array<Vendor0_2\\_Namespace1\\Namespace_2\\User>',
|
||||||
function ($actual, \PHPUnit_Framework_TestCase $case) {
|
function ($actual, \PHPUnit_Framework_TestCase $case) {
|
||||||
$case->assertArrayHasKey('collection', $actual);
|
$case->assertArrayHasKey('collection', $actual);
|
||||||
$case->assertArrayHasKey('collectionName', $actual);
|
$case->assertArrayHasKey('collectionName', $actual);
|
||||||
@ -52,7 +52,7 @@ class CollectionDirectiveTest extends \PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
$case->assertTrue($actual['collection']);
|
$case->assertTrue($actual['collection']);
|
||||||
$case->assertEquals('', $actual['collectionName']);
|
$case->assertEquals('', $actual['collectionName']);
|
||||||
$case->assertEquals('Vendor0_2\\Namespace1\\Namespace_2\\User', $actual['class']);
|
$case->assertEquals('Vendor0_2\\_Namespace1\\Namespace_2\\User', $actual['class']);
|
||||||
}
|
}
|
||||||
),
|
),
|
||||||
'test_simple_named_collections' => array(
|
'test_simple_named_collections' => array(
|
||||||
@ -68,7 +68,7 @@ class CollectionDirectiveTest extends \PHPUnit_Framework_TestCase
|
|||||||
}
|
}
|
||||||
),
|
),
|
||||||
'test_namespaced_named_collections' => array(
|
'test_namespaced_named_collections' => array(
|
||||||
'array<Vendor\\Namespace0\\Namespace_2F3\\Group> as groups',
|
'array<_Vendor\\Namespace0\\Namespace_2F3\\Group> as groups',
|
||||||
function ($actual, \PHPUnit_Framework_TestCase $case) {
|
function ($actual, \PHPUnit_Framework_TestCase $case) {
|
||||||
$case->assertArrayHasKey('collection', $actual);
|
$case->assertArrayHasKey('collection', $actual);
|
||||||
$case->assertArrayHasKey('collectionName', $actual);
|
$case->assertArrayHasKey('collectionName', $actual);
|
||||||
@ -76,7 +76,7 @@ class CollectionDirectiveTest extends \PHPUnit_Framework_TestCase
|
|||||||
|
|
||||||
$case->assertTrue($actual['collection']);
|
$case->assertTrue($actual['collection']);
|
||||||
$case->assertEquals('groups', $actual['collectionName']);
|
$case->assertEquals('groups', $actual['collectionName']);
|
||||||
$case->assertEquals('Vendor\\Namespace0\\Namespace_2F3\\Group', $actual['class']);
|
$case->assertEquals('_Vendor\\Namespace0\\Namespace_2F3\\Group', $actual['class']);
|
||||||
}
|
}
|
||||||
),
|
),
|
||||||
|
|
||||||
@ -99,8 +99,6 @@ class CollectionDirectiveTest extends \PHPUnit_Framework_TestCase
|
|||||||
array('array<>'),
|
array('array<>'),
|
||||||
array('array<Vendor\\>'),
|
array('array<Vendor\\>'),
|
||||||
array('array<2Vendor\\>'),
|
array('array<2Vendor\\>'),
|
||||||
array('array<_Vendor\\>'),
|
|
||||||
array('array<Vendor\\_Class>'),
|
|
||||||
array('array<Vendor\\2Class>'),
|
array('array<Vendor\\2Class>'),
|
||||||
array('array<User> as'),
|
array('array<User> as'),
|
||||||
array('array<User> as '),
|
array('array<User> as '),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user