mirror of
https://github.com/KnpLabs/KnpMarkdownBundle.git
synced 2024-06-17 05:06:19 +02:00
Marking new service has private, then adding a workaround for the integration test
This commit is contained in:
parent
000c4b11ed
commit
21576fce48
|
@ -21,6 +21,6 @@
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<!-- parsers will be injected with a compiler pass -->
|
<!-- parsers will be injected with a compiler pass -->
|
||||||
<service id="markdown.parser.parser_manager" class="Knp\Bundle\MarkdownBundle\Parser\ParserManager" />
|
<service id="markdown.parser.parser_manager" class="Knp\Bundle\MarkdownBundle\Parser\ParserManager" public="false" />
|
||||||
</services>
|
</services>
|
||||||
</container>
|
</container>
|
||||||
|
|
|
@ -15,8 +15,9 @@ class ParserManagerTest extends \PHPUnit_Framework_TestCase
|
||||||
$kernel->boot();
|
$kernel->boot();
|
||||||
$container = $kernel->getContainer();
|
$container = $kernel->getContainer();
|
||||||
|
|
||||||
|
$serviceHelper = $container->get('knp.markdown.test.service_helper');
|
||||||
/** @var ParserManager $parserManager */
|
/** @var ParserManager $parserManager */
|
||||||
$parserManager = $container->get('markdown.parser.parser_manager');
|
$parserManager = $serviceHelper->getParserManager();
|
||||||
|
|
||||||
$actual = $parserManager->transform('*hi*');
|
$actual = $parserManager->transform('*hi*');
|
||||||
$this->assertEquals("<p><em>hi</em></p>\n", $actual, 'There is a default parser');
|
$this->assertEquals("<p><em>hi</em></p>\n", $actual, 'There is a default parser');
|
||||||
|
|
23
Tests/fixtures/app/ServiceHelper.php
vendored
Normal file
23
Tests/fixtures/app/ServiceHelper.php
vendored
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Knp\Bundle\MarkdownBundle\Tests\fixtures\app;
|
||||||
|
|
||||||
|
use Knp\Bundle\MarkdownBundle\Parser\ParserManager;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class helps access private services from integration tests.
|
||||||
|
*/
|
||||||
|
class ServiceHelper
|
||||||
|
{
|
||||||
|
private $parserManager;
|
||||||
|
|
||||||
|
public function __construct(ParserManager $parserManager)
|
||||||
|
{
|
||||||
|
$this->parserManager = $parserManager;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getParserManager()
|
||||||
|
{
|
||||||
|
return $this->parserManager;
|
||||||
|
}
|
||||||
|
}
|
6
Tests/fixtures/app/TestKernel.php
vendored
6
Tests/fixtures/app/TestKernel.php
vendored
|
@ -6,7 +6,7 @@ use Knp\Bundle\MarkdownBundle\KnpMarkdownBundle;
|
||||||
use Symfony\Bundle\FrameworkBundle\FrameworkBundle;
|
use Symfony\Bundle\FrameworkBundle\FrameworkBundle;
|
||||||
use Symfony\Component\Config\Loader\LoaderInterface;
|
use Symfony\Component\Config\Loader\LoaderInterface;
|
||||||
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
||||||
use Symfony\Component\HttpKernel\Bundle\BundleInterface;
|
use Symfony\Component\DependencyInjection\Reference;
|
||||||
use Symfony\Component\HttpKernel\Kernel;
|
use Symfony\Component\HttpKernel\Kernel;
|
||||||
|
|
||||||
class TestKernel extends Kernel
|
class TestKernel extends Kernel
|
||||||
|
@ -25,6 +25,10 @@ class TestKernel extends Kernel
|
||||||
$c->loadFromExtension('framework', array(
|
$c->loadFromExtension('framework', array(
|
||||||
'secret' => 'MarkdownTesting'
|
'secret' => 'MarkdownTesting'
|
||||||
));
|
));
|
||||||
|
|
||||||
|
// add a service to help access private services for integration tests
|
||||||
|
$c->register('knp.markdown.test.service_helper', 'Knp\Bundle\MarkdownBundle\Tests\fixtures\app\ServiceHelper')
|
||||||
|
->addArgument(new Reference('markdown.parser.parser_manager'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -6,7 +6,7 @@ use Knp\Bundle\MarkdownBundle\Parser\ParserManager;
|
||||||
|
|
||||||
class MarkdownTwigExtension extends \Twig_Extension
|
class MarkdownTwigExtension extends \Twig_Extension
|
||||||
{
|
{
|
||||||
protected $parserManager;
|
private $parserManager;
|
||||||
|
|
||||||
public function __construct(ParserManager $parserManager)
|
public function __construct(ParserManager $parserManager)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue