Browse Source

Add test cases for MultiTenantConnectionStringResolver.

pull/9353/head
maliming 5 years ago
parent
commit
56a3ceeca9
  1. 24
      framework/test/Volo.Abp.MultiTenancy.Tests/Volo/Abp/Data/MultiTenancy/MultiTenantConnectionStringResolver_Tests.cs

24
framework/test/Volo.Abp.MultiTenancy.Tests/Volo/Abp/Data/MultiTenancy/MultiTenantConnectionStringResolver_Tests.cs

@ -30,6 +30,21 @@ namespace Volo.Abp.Data.MultiTenancy
{
options.ConnectionStrings.Default = "default-value";
options.ConnectionStrings["db1"] = "db1-default-value";
options.ConnectionStrings["Saas"] = "Saas-default-value";
options.ConnectionStrings["Admin"] = "Admin-default-value";
options.Databases.Configure("Saas", database =>
{
database.MappedConnections.Add("Saas1");
database.MappedConnections.Add("Saas2");
database.IsUsedByTenants = false;
});
options.Databases.Configure("Admin", database =>
{
database.MappedConnections.Add("Admin1");
database.MappedConnections.Add("Admin2");
});
});
services.Configure<AbpDefaultTenantStoreOptions>(options =>
@ -41,7 +56,8 @@ namespace Volo.Abp.Data.MultiTenancy
ConnectionStrings =
{
{ ConnectionStrings.DefaultConnectionStringName, "tenant1-default-value"},
{"db1", "tenant1-db1-value"}
{"db1", "tenant1-db1-value"},
{"Admin", "tenant1-Admin-value"}
}
},
new TenantConfiguration(_tenant2Id, "tenant2")
@ -55,12 +71,16 @@ namespace Volo.Abp.Data.MultiTenancy
//No tenant in current context
(await _connectionResolver.ResolveAsync()).ShouldBe("default-value");
(await _connectionResolver.ResolveAsync("db1")).ShouldBe("db1-default-value");
(await _connectionResolver.ResolveAsync("Saas1")).ShouldBe("Saas-default-value");
(await _connectionResolver.ResolveAsync("Admin2")).ShouldBe("Admin-default-value");
//Overriden connection strings for tenant1
using (_currentTenant.Change(_tenant1Id))
{
(await _connectionResolver.ResolveAsync()).ShouldBe("tenant1-default-value");
(await _connectionResolver.ResolveAsync("db1")).ShouldBe("tenant1-db1-value");
(await _connectionResolver.ResolveAsync("Saas1")).ShouldBe("tenant1-default-value");
(await _connectionResolver.ResolveAsync("Admin2")).ShouldBe("tenant1-Admin-value");
}
//No tenant in current context
@ -72,6 +92,8 @@ namespace Volo.Abp.Data.MultiTenancy
{
(await _connectionResolver.ResolveAsync()).ShouldBe("default-value");
(await _connectionResolver.ResolveAsync("db1")).ShouldBe("db1-default-value");
(await _connectionResolver.ResolveAsync("Saas1")).ShouldBe("Saas-default-value");
(await _connectionResolver.ResolveAsync("Admin2")).ShouldBe("Admin-default-value");
}
}
}

Loading…
Cancel
Save