diff --git a/.vscode/launch.json b/.vscode/launch.json
index 1832c53..3697e67 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -16,6 +16,7 @@
"-dxdebug.start_with_request=yes"
],
"program": "${workspaceFolder}/vendor/bin/phpunit",
+ "preLaunchTask": "Create Dusk Database",
},
{
"name": "Debug Workbench",
@@ -41,7 +42,8 @@
"args": [
"serve"
],
- "postDebugTask": "KillLaravelServer",
+ "preLaunchTask": "Prepare Workbench",
+ "postDebugTask": "Kill Laravel Server",
"internalConsoleOptions": "openOnSessionStart"
}
]
diff --git a/.vscode/tasks.json b/.vscode/tasks.json
index c6aeb0b..8cfae23 100644
--- a/.vscode/tasks.json
+++ b/.vscode/tasks.json
@@ -4,16 +4,39 @@
"version": "2.0.0",
"tasks": [
{
- "label": "KillLaravelServer",
+ "label": "Prepare Workbench",
+ "dependsOn": [
+ "Create Database",
+ "Migrate Database",
+ "Create User"
+ ]
+ },
+ {
+ "label": "Create Database",
"type": "shell",
- "command": "pkill",
+ "command": "${workspaceFolder}/vendor/bin/testbench",
"args": [
- "-f",
- "vendor/orchestra/testbench-core/laravel/server.php"
+ "package:create-sqlite-db"
]
},
{
- "label": "CreateUser",
+ "label": "Drop Database",
+ "type": "shell",
+ "command": "${workspaceFolder}/vendor/bin/testbench",
+ "args": [
+ "package:drop-sqlite-db"
+ ]
+ },
+ {
+ "label": "Migrate Database",
+ "type": "shell",
+ "command": "${workspaceFolder}/vendor/bin/testbench",
+ "args": [
+ "migrate"
+ ]
+ },
+ {
+ "label": "Create User",
"type": "shell",
"command": "${workspaceFolder}/vendor/bin/testbench",
"args": [
@@ -24,17 +47,26 @@
]
},
{
- "label": "Create SQLite Database",
+ "label": "Kill Laravel Server",
"type": "shell",
- "command": "${workspaceFolder}/vendor/bin/testbench",
+ "command": "pkill",
+ "args": [
+ "-f",
+ "vendor/orchestra/testbench-core/laravel/server.php"
+ ]
+ },
+ {
+ "label": "Create Dusk Database",
+ "type": "shell",
+ "command": "${workspaceFolder}/vendor/bin/testbench-dusk",
"args": [
"package:create-sqlite-db"
]
},
{
- "label": "Drop SQLite Database",
+ "label": "Drop Dusk Database",
"type": "shell",
- "command": "${workspaceFolder}/vendor/bin/testbench",
+ "command": "${workspaceFolder}/vendor/bin/testbench-dusk",
"args": [
"package:drop-sqlite-db"
]
diff --git a/phpunit.xml b/phpunit.xml
index 98ecdf0..07b53f2 100644
--- a/phpunit.xml
+++ b/phpunit.xml
@@ -11,6 +11,7 @@
+
diff --git a/testbench.yaml b/testbench.yaml
index e925879..0729d74 100644
--- a/testbench.yaml
+++ b/testbench.yaml
@@ -1,16 +1,18 @@
providers:
- - Workbench\App\Providers\WorkbenchServiceProvider
+ - BladeUI\Heroicons\BladeHeroiconsServiceProvider
+ - BladeUI\Icons\BladeIconsServiceProvider
- Livewire\LivewireServiceProvider
+ - RyanChandler\BladeCaptureDirective\BladeCaptureDirectiveServiceProvider
- Filament\FilamentServiceProvider
- - Filament\Forms\FormsServiceProvider
- - Filament\Widgets\WidgetsServiceProvider
- Filament\Support\SupportServiceProvider
- - Filament\Notifications\NotificationsServiceProvider
- - Filament\Infolists\InfolistsServiceProvider
+ - Filament\Widgets\WidgetsServiceProvider
+ - Filament\Tables\TablesServiceProvider
- Filament\Actions\ActionsServiceProvider
- - BladeUI\Icons\BladeIconsServiceProvider
- - BladeUI\Heroicons\BladeHeroiconsServiceProvider
+ - Filament\Forms\FormsServiceProvider
+ - Filament\Infolists\InfolistsServiceProvider
+ - Filament\Notifications\NotificationsServiceProvider
- SkyRaptor\FilamentBlocksBuilder\FilamentBlocksBuilderServiceProvider
+ - Workbench\App\Providers\WorkbenchServiceProvider
- Workbench\App\Providers\Filament\AdminPanelProvider
migrations:
diff --git a/tests/Browser/TestCase.php b/tests/Browser/TestCase.php
index 2b5418a..1903440 100644
--- a/tests/Browser/TestCase.php
+++ b/tests/Browser/TestCase.php
@@ -2,6 +2,7 @@
namespace Tests\SkyRaptor\FilamentBlocksBuilder\Browser;
+use Illuminate\Contracts\Config\Repository;
use Tests\SkyRaptor\FilamentBlocksBuilder\Concerns\RequiresApplicationEnvironment;
/**
@@ -11,4 +12,25 @@
class TestCase extends \Orchestra\Testbench\Dusk\TestCase
{
use RequiresApplicationEnvironment;
+
+ /**
+ * Define environment setup.
+ *
+ * @param Illuminate\Foundation\Application $app
+ *
+ * @return void
+ */
+ protected function defineEnvironment($app)
+ {
+ /**
+ * Ensure Browser tests use the peristent SQLite database file managed by Orchestral Dusk.
+ *
+ * @see https://packages.tools/testbench-dusk/the-basic.html#supported-database
+ */
+ tap($app['config'], function (Repository $config) {
+ $config->set('database.default', 'sqlite');
+
+ $path = $config->get('database.connections.sqlite.database');
+ });
+ }
}
\ No newline at end of file