make(Kernel::class);
/*
 * Bootstrap the kernel and prepare application for testing.
 */
$kernel->bootstrap();
$output = new ConsoleOutput;
if (config('database.default') !== 'testing') {
    $output->writeln(PHP_EOL . 'Cannot run test process against non-testing database.');
    $output->writeln(PHP_EOL . 'Environment is currently pointed at: "' . config('database.default') . '".');
    exit(1);
}
/*
 * Perform database migrations and reseeding before continuing with
 * running the tests.
 */
if (! env('SKIP_MIGRATIONS')) {
    $output->writeln(PHP_EOL . 'Refreshing database for Integration tests...');
    $kernel->call('migrate:fresh', ['--database' => 'testing']);
    $output->writeln('Seeding database for Integration tests...' . PHP_EOL);
    $kernel->call('db:seed', ['--database' => 'testing']);
} else {
    $output->writeln(PHP_EOL . 'Skipping database migrations...' . PHP_EOL);
}