NelmioApiDocBundle/Tests/Formatter/MarkdownFormatterTest.php

73 lines
1.9 KiB
PHP
Raw Normal View History

2012-04-13 14:27:51 +02:00
<?php
/*
* This file is part of the NelmioApiDocBundle.
*
* (c) Nelmio <hello@nelm.io>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Nelmio\ApiDocBundle\Tests\Formatter;
use Nelmio\ApiDocBundle\Tests\WebTestCase;
2015-11-30 19:19:17 +01:00
use Nelmio\ApiDocBundle\Util\LegacyFormHelper;
2012-04-13 14:27:51 +02:00
class MarkdownFormatterTest extends WebTestCase
{
public function testFormat()
{
$container = $this->getContainer();
$extractor = $container->get('nelmio_api_doc.extractor.api_doc_extractor');
2013-02-15 13:33:05 +01:00
set_error_handler(array($this, 'handleDeprecation'));
2012-04-13 14:27:51 +02:00
$data = $extractor->all();
restore_error_handler();
2012-04-13 14:27:51 +02:00
$result = $container->get('nelmio_api_doc.formatter.markdown_formatter')->format($data);
$suffix = class_exists('Dunglas\ApiBundle\DunglasApiBundle') ? '' : '_1';
2015-11-21 18:30:44 +01:00
$expected = file_get_contents(__DIR__ . '/testFormat-result' . $suffix . '.markdown');
2015-11-30 19:19:17 +01:00
if (LegacyFormHelper::isLegacy()) {
$expected = str_replace('DependencyType', 'dependency_type', $expected);
}
2024-06-18 12:30:31 +03:00
$this->assertEquals($expected, $result . "\n");
2012-04-13 15:00:46 +02:00
}
public function testFormatOne()
{
$container = $this->getContainer();
$extractor = $container->get('nelmio_api_doc.extractor.api_doc_extractor');
$annotation = $extractor->get('Nelmio\ApiDocBundle\Tests\Fixtures\Controller\TestController::indexAction', 'test_route_1');
$result = $container->get('nelmio_api_doc.formatter.markdown_formatter')->formatOne($annotation);
2012-04-13 15:00:46 +02:00
$expected = <<<MARKDOWN
### `GET` /tests.{_format} ###
2012-04-13 15:00:46 +02:00
_index action_
#### Requirements ####
**_format**
2012-04-13 15:00:46 +02:00
#### Filters ####
a:
* DataType: integer
2012-04-13 15:00:46 +02:00
b:
* DataType: string
* Arbitrary: ["arg1","arg2"]
2012-04-13 15:00:46 +02:00
2012-04-13 14:27:51 +02:00
MARKDOWN;
$this->assertEquals($expected, $result);
}
}