| @@ 11-49 (lines=39) @@ | ||
| 8 | use eZ\Publish\Core\REST\Server\Tests\Input\Parser\BaseTest; |
|
| 9 | use PHPUnit_Framework_TestCase; |
|
| 10 | ||
| 11 | class PathStringRouteBasedLimitationParserTest extends BaseTest |
|
| 12 | { |
|
| 13 | public function testParse() |
|
| 14 | { |
|
| 15 | $inputArray = [ |
|
| 16 | '_identifier' => 'Subtree', |
|
| 17 | 'values' => [ |
|
| 18 | 'ref' => [ |
|
| 19 | ['_href' => '/content/locations/1/2/3/4'], |
|
| 20 | ] |
|
| 21 | ] |
|
| 22 | ]; |
|
| 23 | ||
| 24 | $result = $this->getParser()->parse($inputArray, $this->getParsingDispatcherMock()); |
|
| 25 | ||
| 26 | self::assertInstanceOf('stdClass', $result); |
|
| 27 | self::assertObjectHasAttribute('limitationValues', $result); |
|
| 28 | self::assertArrayHasKey(0, $result->limitationValues); |
|
| 29 | self::assertEquals('/1/2/3/4', $result->limitationValues[0]); |
|
| 30 | ||
| 31 | } |
|
| 32 | ||
| 33 | /** |
|
| 34 | * Must return the tested parser object. |
|
| 35 | * @return \eZ\Publish\Core\REST\Server\Input\Parser\Limitation\RouteBasedLimitationParser |
|
| 36 | */ |
|
| 37 | protected function internalGetParser() |
|
| 38 | { |
|
| 39 | return new PathStringRouteBasedLimitationParser('pathString', 'stdClass'); |
|
| 40 | } |
|
| 41 | ||
| 42 | public function getParseHrefExpectationsMap() |
|
| 43 | { |
|
| 44 | return array( |
|
| 45 | array('/content/locations/1/2/3/4', 'pathString', '1/2/3/4'), |
|
| 46 | ); |
|
| 47 | } |
|
| 48 | ||
| 49 | } |
|
| 50 | ||
| @@ 11-49 (lines=39) @@ | ||
| 8 | use eZ\Publish\Core\REST\Server\Tests\Input\Parser\BaseTest; |
|
| 9 | use PHPUnit_Framework_TestCase; |
|
| 10 | ||
| 11 | class RouteBasedLimitationParserTest extends BaseTest |
|
| 12 | { |
|
| 13 | public function testParse() |
|
| 14 | { |
|
| 15 | $inputArray = [ |
|
| 16 | '_identifier' => 'Section', |
|
| 17 | 'values' => [ |
|
| 18 | 'ref' => [ |
|
| 19 | ['_href' => '/content/sections/42'], |
|
| 20 | ] |
|
| 21 | ] |
|
| 22 | ]; |
|
| 23 | ||
| 24 | $result = $this->getParser()->parse($inputArray, $this->getParsingDispatcherMock()); |
|
| 25 | ||
| 26 | self::assertInstanceOf('stdClass', $result); |
|
| 27 | self::assertObjectHasAttribute('limitationValues', $result); |
|
| 28 | self::assertArrayHasKey(0, $result->limitationValues); |
|
| 29 | self::assertEquals(42, $result->limitationValues[0]); |
|
| 30 | ||
| 31 | } |
|
| 32 | ||
| 33 | /** |
|
| 34 | * Must return the tested parser object. |
|
| 35 | * @return \eZ\Publish\Core\REST\Server\Input\Parser\Limitation\RouteBasedLimitationParser |
|
| 36 | */ |
|
| 37 | protected function internalGetParser() |
|
| 38 | { |
|
| 39 | return new RouteBasedLimitationParser('sectionId', 'stdClass'); |
|
| 40 | } |
|
| 41 | ||
| 42 | public function getParseHrefExpectationsMap() |
|
| 43 | { |
|
| 44 | return array( |
|
| 45 | array('/content/sections/42', 'sectionId', 42), |
|
| 46 | ); |
|
| 47 | } |
|
| 48 | ||
| 49 | } |
|
| 50 | ||