Bug Fixes
This commit is contained in:
@@ -8,6 +8,7 @@ using System.Linq;
|
||||
using Models;
|
||||
using Business.Business.UserManagment;
|
||||
using Business.Business.UserManagment.Controllers;
|
||||
using System;
|
||||
|
||||
namespace LuminousUnitTests
|
||||
{
|
||||
@@ -15,26 +16,45 @@ namespace LuminousUnitTests
|
||||
{
|
||||
private UserController userctrl;
|
||||
private RoleController rolectrl;
|
||||
private Mock<LuminousContext> testContext;
|
||||
private Mock<DbSet<User>> UserMock;
|
||||
private Mock<DbSet<Role>> RoleMock;
|
||||
private IQueryable<User> testUsers;
|
||||
private IQueryable<Role> testRoles;
|
||||
[SetUp]
|
||||
public void Setup()
|
||||
{
|
||||
var mock = new Mock<DbSet<User>>();
|
||||
var mocka = new Mock<DbSet<User>>();
|
||||
UserMock = new Mock<DbSet<User>>();
|
||||
RoleMock = new Mock<DbSet<Role>>();
|
||||
testUsers = new List<User>
|
||||
{
|
||||
new User(){ Name = "Admin", Password = "adm123", RoleId = 1},
|
||||
new User(){ Name = "Goso", Password = "goso123", RoleId = 2},
|
||||
new User(){ Name = "Pesho", Password = "peso123", RoleId = 3},
|
||||
}.AsQueryable();
|
||||
mock.As<IQueryable<User>>().Setup(m => m.Provider).Returns(testUsers.Provider);
|
||||
mock.As<IQueryable<User>>().Setup(m => m.Expression).Returns(testUsers.Expression);
|
||||
mock.As<IQueryable<User>>().Setup(m => m.ElementType).Returns(testUsers.ElementType);
|
||||
mock.As<IQueryable<User>>().Setup(m => m.GetEnumerator()).Returns(testUsers.GetEnumerator());
|
||||
var testContext = new Mock<LuminousContext>();
|
||||
testContext.Setup(s => s.User).Returns(mock.Object);
|
||||
testRoles = new List<Role>
|
||||
{
|
||||
new Role { Name = "Cashier"},
|
||||
new Role { Name = "Manager"},
|
||||
new Role { Name = "Admin" }
|
||||
}.AsQueryable();
|
||||
|
||||
UserMock.As<IQueryable<User>>().Setup(m => m.Provider).Returns(testUsers.Provider);
|
||||
UserMock.As<IQueryable<User>>().Setup(m => m.Expression).Returns(testUsers.Expression);
|
||||
UserMock.As<IQueryable<User>>().Setup(m => m.ElementType).Returns(testUsers.ElementType);
|
||||
UserMock.As<IQueryable<User>>().Setup(m => m.GetEnumerator()).Returns(testUsers.GetEnumerator());
|
||||
|
||||
RoleMock.As<IQueryable<User>>().Setup(m => m.Provider).Returns(testUsers.Provider);
|
||||
RoleMock.As<IQueryable<User>>().Setup(m => m.Expression).Returns(testUsers.Expression);
|
||||
RoleMock.As<IQueryable<User>>().Setup(m => m.ElementType).Returns(testUsers.ElementType);
|
||||
RoleMock.As<IQueryable<User>>().Setup(m => m.GetEnumerator()).Returns(testUsers.GetEnumerator());
|
||||
|
||||
testContext = new Mock<LuminousContext>();
|
||||
testContext.Setup(s => s.User).Returns(UserMock.Object);
|
||||
testContext.Setup(s => s.Role).Returns(RoleMock.Object);
|
||||
|
||||
userctrl = new UserController(testUsers.ToList()[0], testContext.Object);
|
||||
rolectrl = new RoleController(testContext.Object);
|
||||
}
|
||||
|
||||
[Test]
|
||||
@@ -53,9 +73,17 @@ namespace LuminousUnitTests
|
||||
[Test]
|
||||
public void UserController_AddItem()
|
||||
{
|
||||
rolectrl.CreateInitialRoles();
|
||||
RoleMock.Verify(m => m.AddRange(It.IsAny<Role[]>()));
|
||||
testContext.Verify(m => m.SaveChanges());
|
||||
userctrl.RegisterItem("Penka", "penka123", 3);
|
||||
List<User> users = userctrl.GetAll().ToList();
|
||||
Assert.AreEqual(users.Count, 4);
|
||||
UserMock.Verify(m => m.Add(It.IsAny<User>()));
|
||||
testContext.Verify(m => m.SaveChanges());
|
||||
}
|
||||
public void UserController_DeleteUser()
|
||||
{
|
||||
userctrl.Delete(1);
|
||||
UserMock.Verify(m => m.Remove(It.IsAny<User>()));
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user