ExpressiveInstallerTest\ContainersTest::testContainer PHP Method

testContainer() public method

public testContainer ( $containerOption, $routerOption, $copyFilesKey, $expectedResponseStatusCode, $expectedContainer )
    public function testContainer($containerOption, $routerOption, $copyFilesKey, $expectedResponseStatusCode, $expectedContainer)
    {
        $io = $this->prophesize('Composer\\IO\\IOInterface');
        $config = $this->getConfig();
        // Install container
        $containerResult = OptionalPackages::processAnswer($io->reveal(), $config['questions']['container'], $containerOption, $copyFilesKey);
        $this->assertTrue($containerResult);
        // Install router
        $routerResult = OptionalPackages::processAnswer($io->reveal(), $config['questions']['router'], $routerOption, $copyFilesKey);
        $this->assertTrue($routerResult);
        // Test container
        $container = $this->getContainer();
        $this->assertInstanceOf(ContainerInterface::class, $container);
        $this->assertInstanceOf($expectedContainer, $container);
        $this->assertTrue($container->has(Expressive\Helper\UrlHelper::class));
        $this->assertTrue($container->has(Expressive\Helper\ServerUrlHelper::class));
        $this->assertTrue($container->has(Expressive\Application::class));
        $this->assertTrue($container->has(Expressive\Router\RouterInterface::class));
        // Test home page
        $response = $this->getAppResponse();
        $this->assertEquals($expectedResponseStatusCode, $response->getStatusCode());
    }