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
|
namespace TIAM.Database.Test
|
||||||
{
|
{
|
||||||
[TestClass]
|
[TestClass]
|
||||||
public class DatabaseTest //: DatabaseTestModelBase<DbContextBase>
|
public class DatabaseTest : AcDatabaseTestBase<DbContextBase>
|
||||||
{
|
{
|
||||||
|
|
||||||
[TestInitialize]
|
[TestInitialize]
|
||||||
public void Setup()
|
public void Setup()
|
||||||
{
|
{
|
||||||
|
|
@ -20,31 +19,5 @@ namespace TIAM.Database.Test
|
||||||
public void TearDown()
|
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
|
namespace TIAM.Database.Test
|
||||||
{
|
{
|
||||||
[TestClass]
|
[TestClass]
|
||||||
public class ServiceProviderDalTest : DatabaseTestModelBase<ServiceProviderDbContext>
|
public class ServiceProviderDalTest : AcDatabaseTestModelBase<ServiceProviderDal, ServiceProviderDbContext>
|
||||||
{
|
{
|
||||||
private ServiceProviderDal _serviceProviderDal;
|
|
||||||
|
|
||||||
[TestInitialize]
|
[TestInitialize]
|
||||||
public void Setup()
|
public void Setup()
|
||||||
{
|
{
|
||||||
_serviceProviderDal = new ServiceProviderDal();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestCleanup]
|
[TestCleanup]
|
||||||
|
|
@ -27,14 +24,15 @@ namespace TIAM.Database.Test
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
//[DataRow(Guid.Parse("540271F6-C604-4C16-8160-D5A7CAFEDF00")]
|
[DataRow("540271F6-C604-4C16-8160-D5A7CAFEDF00")]
|
||||||
public async Task GetPermissionContextMappingByContext_ReturnsPermissionContextMapping_WhenPermissionContextMappingExists()//(Guid contextId)
|
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.DataLayers;
|
||||||
using AyCode.Database.Tests;
|
using AyCode.Database.Tests;
|
||||||
|
using AyCode.Database.Tests.Users;
|
||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
using Microsoft.VisualStudio.TestPlatform.ObjectModel;
|
using Microsoft.VisualStudio.TestPlatform.ObjectModel;
|
||||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||||
|
|
@ -11,10 +12,9 @@ using TIAM.Entities.Users;
|
||||||
namespace TIAM.Database.Test
|
namespace TIAM.Database.Test
|
||||||
{
|
{
|
||||||
[TestClass]
|
[TestClass]
|
||||||
public class UserDalTests : DatabaseTestModelBase<UserDbContext>
|
public class UserDalTests : AcUserDalTestBase<UserDal, UserDbContext, User, UserToken>
|
||||||
{
|
{
|
||||||
private Mock<UserDbContext> _mockContext;
|
private Mock<UserDbContext> _mockContext;
|
||||||
private UserDal _userDal;
|
|
||||||
|
|
||||||
[TestInitialize]
|
[TestInitialize]
|
||||||
public void TestInitialize()
|
public void TestInitialize()
|
||||||
|
|
@ -29,40 +29,6 @@ namespace TIAM.Database.Test
|
||||||
//_mockContext.Setup(c => c.Users).Returns(mockSet.Object);
|
//_mockContext.Setup(c => c.Users).Returns(mockSet.Object);
|
||||||
|
|
||||||
//_userDal = new UserDal(_mockContext.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]
|
//[TestMethod]
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ using TIAM.Entities.Users;
|
||||||
using TIAM.Database.DbContexts.ServiceProviders;
|
using TIAM.Database.DbContexts.ServiceProviders;
|
||||||
using TIAM.Database.DbSets.Permissions;
|
using TIAM.Database.DbSets.Permissions;
|
||||||
using TIAM.Database.DbSets.Users;
|
using TIAM.Database.DbSets.Users;
|
||||||
|
using AyCode.Database.DataLayers;
|
||||||
|
|
||||||
|
|
||||||
namespace TIAM.Database.DataLayers.ServiceProviders
|
namespace TIAM.Database.DataLayers.ServiceProviders
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,15 @@ namespace TIAM.Database.DataLayers.ServiceProviders;
|
||||||
|
|
||||||
public static class ServiceProviderDalExtension
|
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)
|
public static IQueryable<PermissionContextMapping> GetPermissionContextMappingByContextId(this IServiceProviderDbContext ctx, Guid contextId)
|
||||||
{
|
{
|
||||||
var subjectIds = ctx.GetAssignedUsersByContextId(contextId).Select(x => x.Id).
|
var subjectIds = ctx.GetAssignedUsersByContextId(contextId).Select(x => x.Id).
|
||||||
|
|
|
||||||
|
|
@ -15,9 +15,10 @@ namespace TIAM.Database.DbContexts.Users
|
||||||
{
|
{
|
||||||
public class UserDbContext : DbContextBase, IUserDbContext
|
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 DbSet<UserToken> UserTokens { get; set; }
|
||||||
|
|
||||||
|
|
||||||
public UserDbContext() //: this(string.Empty)
|
public UserDbContext() //: this(string.Empty)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,15 +5,6 @@ namespace TIAM.Database.DbSets.Users;
|
||||||
|
|
||||||
public static class AssignedUserDbSetExtensions
|
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)
|
public static AssignedUser? GetAssignedUserById(this IAssignedUserDbSet ctx, Guid assignedUserId)
|
||||||
=> ctx.AssignedUsers.FirstOrDefault(x => x.Id == assignedUserId);
|
=> ctx.AssignedUsers.FirstOrDefault(x => x.Id == assignedUserId);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue