Files
filament/tests/TestCase.php
T
2020-10-19 15:03:31 -07:00

63 lines
1.5 KiB
PHP

<?php
namespace Filament\Tests;
use Mockery;
use Orchestra\Testbench\TestCase as OrchestraTestCase;
use Illuminate\Support\Facades\Artisan;
use Illuminate\Support\Facades\Facade;
use Filament\FilamentServiceProvider;
abstract class TestCase extends OrchestraTestCase
{
public function setUp(): void
{
$this->afterApplicationCreated(function () {
$this->makeACleanSlate();
});
$this->beforeApplicationDestroyed(function () {
$this->makeACleanSlate();
});
parent::setUp();
Facade::setFacadeApplication(app());
}
public function makeACleanSlate()
{
Artisan::call('view:clear');
}
public function tearDown(): void
{
Mockery::close();
}
protected function getPackageProviders($app)
{
return [FilamentServiceProvider::class];
}
protected function getEnvironmentSetUp($app)
{
$app['migrator']->path(__DIR__.'/../database/migrations');
$app['config']->set('session.driver', 'file');
$app['config']->set('view.paths', [
__DIR__.'/../resources/views',
resource_path('views'),
]);
$app['config']->set('app.key', 'base64:Hupj4yAgSjLrM2/edkZQNQHslgDWZfjBfCuSThJ5SK8=');
$app['config']->set('database.default', 'testbench');
$app['config']->set('database.connections.testbench', [
'driver' => 'sqlite',
'database' => ':memory:',
'prefix' => '',
]);
}
}