mirror of
https://github.com/stancl/tenancy-docs.git
synced 2025-12-12 18:24:03 +00:00
1.2 KiB
1.2 KiB
| title | extends | section |
|---|---|---|
| Testing | _layouts.documentation | content |
Testing
TODO: Review
Central app
To test your central app, just write normal Laravel tests.
Tenant app
Note: If you're using multi-database tenancy & the automatic mode, it's not possible to use :memory: SQLite databases or the RefreshDatabase trait due to the switching of default database.
To test the tenant part of the application, create a tenant in the setUp() method and initialize tenancy.
You may also want to do something like this:
class TestCase // extends ...
{
protected $tenancy = false;
public function setUp(): void
{
if ($this->tenancy) {
$this->initializeTenancy();
}
}
public function initializeTenancy()
{
$tenant = Tenant::create();
tenancy()->initialize($tenant);
}
// ...
}
And in your individual test cases:
class FooTest extends TestCase
{
protected $tenancy = true;
/** @test */
public function some_test()
{
$this->assertTrue(...);
}
}
Or you may want to create a separate TestCase class for tenant tests, for better organization.