Hostnet\Bundle\WebpackBundle\DependencyInjection\WebpackCompilerPassTest::testPass PHP Method

testPass() public method

public testPass ( )
    public function testPass()
    {
        $bundle = new WebpackBundle();
        $container = new ContainerBuilder();
        $extension = $bundle->getContainerExtension();
        $fixture_dir = realpath(__DIR__ . '/../../Fixture');
        $container->setParameter('kernel.bundles', ['FooBundle' => FooBundle::class, 'BarBundle' => BarBundle::class]);
        $container->setParameter('kernel.environment', 'dev');
        $container->setParameter('kernel.root_dir', $fixture_dir);
        $container->setParameter('kernel.cache_dir', realpath($fixture_dir . '/cache'));
        $container->set('filesystem', new Filesystem());
        $container->set('templating.finder', $this->getMockBuilder(TemplateFinderInterface::class)->getMock());
        $container->set('twig', $this->getMockBuilder(\Twig_Environment::class)->disableOriginalConstructor()->getMock());
        $container->set('logger', $this->getMockBuilder(LoggerInterface::class)->getMock());
        $container->setDefinition('webpack_extension', (new Definition(CodeBlockProviderInterface::class))->addTag('hostnet_webpack.config_extension'));
        $bundle->build($container);
        $extension->load(['webpack' => ['node' => ['node_modules_path' => $fixture_dir . '/node_modules'], 'bundles' => ['FooBundle'], 'resolve' => ['alias' => ['foo' => __DIR__, 'bar' => __DIR__ . '/fake']]]], $container);
        $container->compile();
        $this->assertTrue($container->hasDefinition('hostnet_webpack.bridge.asset_compiler'));
        $this->assertTrue($container->hasDefinition('hostnet_webpack.bridge.asset_tracker'));
        $this->assertTrue($container->hasDefinition('hostnet_webpack.bridge.config_generator'));
        $this->assertTrue($container->hasDefinition('hostnet_webpack.bridge.profiler'));
        $method_calls = $container->getDefinition('hostnet_webpack.bridge.config_generator')->getMethodCalls();
        $this->assertArraySubset([['addExtension', [new Reference('webpack_extension')]]], $method_calls);
        $method_calls = $container->getDefinition('hostnet_webpack.bridge.asset_tracker')->getMethodCalls();
        $this->assertEquals([['addPath', [__DIR__]]], $method_calls);
        $process_definition = $container->getDefinition('hostnet_webpack.bridge.compiler_process');
        self::assertTrue($process_definition->hasMethodCall('setTimeout'));
        self::assertEquals(Configuration::DEFAULT_COMPILE_TIMEOUT_SECONDS, $process_definition->getMethodCalls()[0][1][0]);
    }
WebpackCompilerPassTest