PHP code example of teamneusta / pimcore-testing-framework
1. Go to this page and download the library: Download teamneusta/pimcore-testing-framework library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
teamneusta / pimcore-testing-framework example snippets
# tests/bootstrap.php
use Neusta\Pimcore\TestingFramework\BootstrapPimcore;
use Neusta\Pimcore\TestingFramework\TestKernel;
use Neusta\Pimcore\TestingFramework\KernelTestCase;
use Neusta\Pimcore\TestingFramework\TestKernel;
class SomeTest extends KernelTestCase
{
public function test_bundle_with_different_configuration(): void
{
// Boot the kernel with a config closure
$kernel = self::bootKernel(['config' => static function (TestKernel $kernel) {
// Add some other bundles we depend on
$kernel->addTestBundle(OtherBundle::class);
// Add some configuration
$kernel->addTestConfig(__DIR__.'/config.yaml');
// Configure some extension
$kernel->addTestExtensionConfig('my_bundle', ['some_config' => true]);
// Add some compiler pass
$kernel->addTestCompilerPass(new MyBundleCompilerPass());
}]);
}
}
use Neusta\Pimcore\TestingFramework\Attribute\Kernel\ConfigureContainer;
use Neusta\Pimcore\TestingFramework\Attribute\Kernel\ConfigureExtension;
use Neusta\Pimcore\TestingFramework\Attribute\Kernel\RegisterBundle;
use Neusta\Pimcore\TestingFramework\Attribute\Kernel\RegisterCompilerPass;
use Neusta\Pimcore\TestingFramework\KernelTestCase;
#[RegisterBundle(SomeBundle::class)]
class SomeTest extends KernelTestCase
{
#[ConfigureContainer(__DIR__ . '/Fixtures/some_config.yaml')]
#[ConfigureExtension('some_extension', ['config' => 'values'])]
#[RegisterCompilerPass(new SomeCompilerPass())]
public function test_something(): void
{
self::bootKernel();
// test something
}
}
use Neusta\Pimcore\TestingFramework\Attribute\Kernel\ConfigureExtension;
use Neusta\Pimcore\TestingFramework\KernelTestCase;
class SomeTest extends KernelTestCase
{
public function provideTestData(): iterable
{
yield [
'some value',
new ConfigureExtension('some_extension', ['config' => 'some value']),
];
yield [
new ConfigureExtension('some_extension', ['config' => 'other value']),
'other value',
];
}
/** @dataProvider provideTestData */
public function test_something(string $expected): void
{
self::assertSame($expected, self::getContainer()->getParameter('config'));
}
}
use Neusta\Pimcore\TestingFramework\Attribute\ConfigureKernel;
use Neusta\Pimcore\TestingFramework\TestKernel;
#[\Attribute(\Attribute::TARGET_CLASS | \Attribute::TARGET_METHOD)]
class ConfigureSomeBundle implements ConfigureKernel
{
public function __construct(
private readonly array $config,
) {
}
public function configure(TestKernel $kernel): void
{
$kernel->addTestBundle(SomeBundle::class);
$kernel->addTestExtensionConfig('some', array_merge(
['default' => 'config'],
$this->config,
));
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.