mirror of
https://github.com/archtechx/tenancy.git
synced 2026-02-04 17:04:03 +00:00
add storage driver assertion
This commit is contained in:
parent
b07b848a56
commit
70234e1123
5 changed files with 22 additions and 4 deletions
|
|
@ -57,8 +57,8 @@ class TenancyServiceProvider extends ServiceProvider
|
|||
{
|
||||
$this->mergeConfigFrom(__DIR__ . '/assets/config.php', 'tenancy');
|
||||
|
||||
$this->app->bind(StorageDriver::class, $this->app['config']['tenancy.storage_driver']);
|
||||
$this->app->bind(TenantModel::class, $this->app['config']['tenancy.tenant_model']);
|
||||
$this->app->bind(StorageDriver::class, $this->app['config']['tenancy.storage_driver']);
|
||||
$this->app->bind(ServerConfigManager::class, $this->app['config']['tenancy.server.manager']);
|
||||
$this->app->singleton(DatabaseManager::class);
|
||||
$this->app->singleton(TenantManager::class, function ($app) {
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
namespace Stancl\Tenancy;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Stancl\Tenancy\Interfaces\TenantModel;
|
||||
|
||||
class Tenant extends Model implements TenantModel
|
||||
{
|
||||
|
|
|
|||
|
|
@ -320,4 +320,9 @@ class TenantManager
|
|||
|
||||
return $this->tenant[(string) $attribute];
|
||||
}
|
||||
|
||||
public function getStorageDriver(): Interfaces\StorageDriver
|
||||
{
|
||||
return $this->storage;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,6 +2,9 @@
|
|||
|
||||
namespace Stancl\Tenancy\Tests;
|
||||
|
||||
use Stancl\Tenancy\StorageDrivers\DatabaseStorageDriver;
|
||||
use Stancl\Tenancy\StorageDrivers\RedisStorageDriver;
|
||||
|
||||
class TenantStorageTest extends TestCase
|
||||
{
|
||||
/** @test */
|
||||
|
|
@ -109,8 +112,16 @@ class TenantStorageTest extends TestCase
|
|||
{
|
||||
$value = ['foo' => 'bar', 'abc' => 'xyz'];
|
||||
|
||||
dd(\Stancl\Tenancy\Tenant::find(tenant('uuid')));
|
||||
|
||||
$this->assertSame($value, tenancy()->put($value));
|
||||
}
|
||||
|
||||
/** @test */
|
||||
public function correct_storage_driver_is_used()
|
||||
{
|
||||
if (config('tenancy.storage_driver') == DatabaseStorageDriver::class) {
|
||||
$this->assertSame('DatabaseStorageDriver', class_basename(tenancy()->getStorageDriver()));
|
||||
} elseif (config('tenancy.storage_driver') == RedisStorageDriver::class) {
|
||||
$this->assertSame('RedisStorageDriver', class_basename(tenancy()->getStorageDriver()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
namespace Stancl\Tenancy\Tests;
|
||||
|
||||
use Illuminate\Support\Facades\Redis;
|
||||
use Illuminate\Support\Facades\Artisan;
|
||||
use Stancl\Tenancy\StorageDrivers\DatabaseStorageDriver;
|
||||
|
||||
abstract class TestCase extends \Orchestra\Testbench\TestCase
|
||||
|
|
@ -21,7 +22,7 @@ abstract class TestCase extends \Orchestra\Testbench\TestCase
|
|||
|
||||
Redis::connection('tenancy')->flushdb();
|
||||
Redis::connection('cache')->flushdb();
|
||||
Artisan::call('migrate');
|
||||
Artisan::call('migrate'); // todo load default migration
|
||||
|
||||
if ($this->autoCreateTenant) {
|
||||
$this->createTenant();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue