refactoring, improvements, fixes...
This commit is contained in:
parent
c0327df85f
commit
3e4933e9c2
|
|
@ -7,9 +7,8 @@ using TIAM.Database.DbContexts.Users;
|
|||
namespace TIAM.Database.Test
|
||||
{
|
||||
[TestClass]
|
||||
public class DatabaseTest //: DatabaseTestModelBase<DbContextBase>
|
||||
public class DatabaseTest : AcDatabaseTestBase<DbContextBase>
|
||||
{
|
||||
|
||||
[TestInitialize]
|
||||
public void Setup()
|
||||
{
|
||||
|
|
@ -20,31 +19,5 @@ namespace TIAM.Database.Test
|
|||
public void TearDown()
|
||||
{
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void MsTest_Test()
|
||||
{
|
||||
Assert.IsTrue(true);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void DatabaseExistsTest()
|
||||
{
|
||||
using var ctx = new TransferDestinationDbContext();
|
||||
//ctx.Database.OpenConnection();
|
||||
|
||||
var isConnected = ctx.Database.CanConnect();
|
||||
Assert.IsTrue(isConnected);
|
||||
}
|
||||
|
||||
|
||||
[TestMethod]
|
||||
public void UserDalTest()
|
||||
{
|
||||
using var ctx = new UserDbContext();
|
||||
|
||||
var isConnected = ctx.Database.CanConnect();
|
||||
Assert.IsTrue(isConnected);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -12,14 +12,11 @@ using TIAM.Database.DbContexts.ServiceProviders;
|
|||
namespace TIAM.Database.Test
|
||||
{
|
||||
[TestClass]
|
||||
public class ServiceProviderDalTest : DatabaseTestModelBase<ServiceProviderDbContext>
|
||||
public class ServiceProviderDalTest : AcDatabaseTestModelBase<ServiceProviderDal, ServiceProviderDbContext>
|
||||
{
|
||||
private ServiceProviderDal _serviceProviderDal;
|
||||
|
||||
[TestInitialize]
|
||||
public void Setup()
|
||||
{
|
||||
_serviceProviderDal = new ServiceProviderDal();
|
||||
}
|
||||
|
||||
[TestCleanup]
|
||||
|
|
@ -27,14 +24,15 @@ namespace TIAM.Database.Test
|
|||
{ }
|
||||
|
||||
[TestMethod]
|
||||
//[DataRow(Guid.Parse("540271F6-C604-4C16-8160-D5A7CAFEDF00")]
|
||||
public async Task GetPermissionContextMappingByContext_ReturnsPermissionContextMapping_WhenPermissionContextMappingExists()//(Guid contextId)
|
||||
[DataRow("540271F6-C604-4C16-8160-D5A7CAFEDF00")]
|
||||
public async Task GetPermissionContextMappingByContext_ReturnsPermissionContextMapping_WhenPermissionContextMappingExists(string contextIdString)
|
||||
{
|
||||
var contextId = Guid.Parse("540271F6-C604-4C16-8160-D5A7CAFEDF00");
|
||||
var contextId = Guid.Parse(contextIdString);
|
||||
|
||||
var permMapping = await _serviceProviderDal.GetPermissionContextMappingByContextIdAsync(contextId);
|
||||
var permMapping = await Dal.GetPermissionContextMappingByContextIdAsync(contextId);
|
||||
|
||||
Assert.IsNotNull(permMapping);
|
||||
Assert.IsNotNull(permMapping, "Result is null");
|
||||
Assert.IsTrue(permMapping.Count > 0, "Result count: 0");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
using AyCode.Database.DataLayers;
|
||||
using AyCode.Database.Tests;
|
||||
using AyCode.Database.Tests.Users;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.VisualStudio.TestPlatform.ObjectModel;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
|
@ -11,10 +12,9 @@ using TIAM.Entities.Users;
|
|||
namespace TIAM.Database.Test
|
||||
{
|
||||
[TestClass]
|
||||
public class UserDalTests : DatabaseTestModelBase<UserDbContext>
|
||||
public class UserDalTests : AcUserDalTestBase<UserDal, UserDbContext, User, UserToken>
|
||||
{
|
||||
private Mock<UserDbContext> _mockContext;
|
||||
private UserDal _userDal;
|
||||
|
||||
[TestInitialize]
|
||||
public void TestInitialize()
|
||||
|
|
@ -29,40 +29,6 @@ namespace TIAM.Database.Test
|
|||
//_mockContext.Setup(c => c.Users).Returns(mockSet.Object);
|
||||
|
||||
//_userDal = new UserDal(_mockContext.Object);
|
||||
|
||||
_userDal = PooledDal.CreateDal<UserDal>();
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[DataRow("test@tiam.hu")]
|
||||
public void GetUserByEmail_ReturnsUser_WhenUserExists(string email)
|
||||
{
|
||||
//var userDal = PooledDal.CreateDal<UserDal>();
|
||||
var user = _userDal.GetUserByEmail(email);
|
||||
|
||||
Assert.IsNotNull(user);
|
||||
Assert.AreEqual(email, user.EmailAddress);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[DataRow("test@tiam.hu")]
|
||||
public async Task GetUserByEmailAsync_ReturnsUser_WhenUserExists(string email)
|
||||
{
|
||||
User? user = null;
|
||||
//var userDal = PooledDal.CreateDal<UserDal>();
|
||||
|
||||
user = await _userDal.GetUserByEmailAsync(email).ConfigureAwait(false);
|
||||
|
||||
//user = await _userDal.SessionAsync(ctx => ctx.Users.FirstOrDefault(x => x.EmailAddress == email)).ConfigureAwait(false);
|
||||
|
||||
//await using (var ctx = _userDal.Context)
|
||||
//{
|
||||
// user = await ctx.Users.FirstOrDefaultAsync(x => x.EmailAddress == email).ConfigureAwait(false);
|
||||
//}
|
||||
|
||||
|
||||
Assert.IsNotNull(user);
|
||||
Assert.AreEqual(email, user.EmailAddress);
|
||||
}
|
||||
|
||||
//[TestMethod]
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ using TIAM.Entities.Users;
|
|||
using TIAM.Database.DbContexts.ServiceProviders;
|
||||
using TIAM.Database.DbSets.Permissions;
|
||||
using TIAM.Database.DbSets.Users;
|
||||
using AyCode.Database.DataLayers;
|
||||
|
||||
|
||||
namespace TIAM.Database.DataLayers.ServiceProviders
|
||||
|
|
|
|||
|
|
@ -10,6 +10,15 @@ namespace TIAM.Database.DataLayers.ServiceProviders;
|
|||
|
||||
public static class ServiceProviderDalExtension
|
||||
{
|
||||
public static IQueryable<AssignedUser> GetAssignedUsersByPermissionGroupId(this ServiceProviderDbContext ctx, Guid permissionGroupId)
|
||||
{
|
||||
return ctx.AssignedUsers
|
||||
.Where(user => ctx.PermissionGroupUserMappings
|
||||
.Where(x => x.PermissionGroupId == permissionGroupId)
|
||||
.Select(x => x.AssignedUserId)
|
||||
.Contains(user.Id));
|
||||
}
|
||||
|
||||
public static IQueryable<PermissionContextMapping> GetPermissionContextMappingByContextId(this IServiceProviderDbContext ctx, Guid contextId)
|
||||
{
|
||||
var subjectIds = ctx.GetAssignedUsersByContextId(contextId).Select(x => x.Id).
|
||||
|
|
|
|||
|
|
@ -15,9 +15,10 @@ namespace TIAM.Database.DbContexts.Users
|
|||
{
|
||||
public class UserDbContext : DbContextBase, IUserDbContext
|
||||
{
|
||||
public virtual DbSet<User> Users { get; set; }
|
||||
public DbSet<User> Users { get; set; }
|
||||
public DbSet<UserToken> UserTokens { get; set; }
|
||||
|
||||
|
||||
public UserDbContext() //: this(string.Empty)
|
||||
{
|
||||
|
||||
|
|
|
|||
|
|
@ -5,15 +5,6 @@ namespace TIAM.Database.DbSets.Users;
|
|||
|
||||
public static class AssignedUserDbSetExtensions
|
||||
{
|
||||
public static IQueryable<AssignedUser> GetAssignedUsersByPermissionGroupId(this ServiceProviderDbContext ctx, Guid permissionGroupId)
|
||||
{
|
||||
return ctx.AssignedUsers
|
||||
.Where(user => ctx.PermissionGroupUserMappings
|
||||
.Where(x => x.PermissionGroupId == permissionGroupId)
|
||||
.Select(x => x.AssignedUserId)
|
||||
.Contains(user.Id));
|
||||
}
|
||||
|
||||
public static AssignedUser? GetAssignedUserById(this IAssignedUserDbSet ctx, Guid assignedUserId)
|
||||
=> ctx.AssignedUsers.FirstOrDefault(x => x.Id == assignedUserId);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue