public function testInstallationProcess()
{
$client = static::createClient();
// make sure we have a clean slate and our parameters file is backed up
$this->emptyTestDatabase($client->getContainer()->get('database'));
// recreate the client with the empty database because we need this in our installer checks
$client = static::createClient();
$this->backupParametersFile($client->getContainer()->getParameter('kernel.root_dir'));
$crawler = $client->request('GET', '/install/2');
$crawler = $this->runTroughStep2($crawler, $client);
$crawler = $this->runTroughStep3($crawler, $client);
$crawler = $this->runTroughStep4($crawler, $client);
$this->runTroughStep5($crawler, $client);
// put back our parameters file
$this->putParametersFileBack($client->getContainer()->getParameter('kernel.root_dir'));
}