Exemple #1
0
 public AdminController(IAdminRuleEngine adminRuleEngine)
 {
     this.adminRuleEngine = adminRuleEngine;
 }
        public void Initialize()
        {
            Mock <IAdminRuleEngine> mock = new Mock <IAdminRuleEngine>();

            adminRuleEngine = mock.Object;

            var users = new List <UserModel>();

            users.Add(new UserModel()
            {
                UserID          = 1,
                FirstName       = "Test",
                LastName        = "User",
                UserName        = "******",
                IsActive        = true,
                EffectiveToDate = DateTime.Today.AddYears(2),
                LastLogin       = DateTime.Now.Subtract(TimeSpan.FromDays(1)),
                LoginCount      = 10,
                LoginAttempts   = 0,
                ModifiedBy      = 1,
                ModifiedOn      = DateTime.Today,
                Password        = "******"
            });
            users.Add(new UserModel()
            {
                UserID          = 2,
                FirstName       = "Test",
                LastName        = "User",
                UserName        = "******",
                IsActive        = true,
                EffectiveToDate = DateTime.Today.AddYears(2),
                LastLogin       = DateTime.Now.Subtract(TimeSpan.FromDays(1)),
                LoginCount      = 10,
                LoginAttempts   = 0,
                ModifiedBy      = 1,
                ModifiedOn      = DateTime.Today,
                Password        = "******"
            });
            users.Add(new UserModel()
            {
                UserID          = 3,
                FirstName       = "Test",
                LastName        = "User",
                UserName        = "******",
                IsActive        = true,
                EffectiveToDate = DateTime.Today.AddYears(2),
                LastLogin       = DateTime.Now.Subtract(TimeSpan.FromDays(1)),
                LoginCount      = 10,
                LoginAttempts   = 0,
                ModifiedBy      = 1,
                ModifiedOn      = DateTime.Today,
                Password        = "******"
            });

            var allUsers = new Response <UserModel>()
            {
                DataItems = users
            };

            var userRoles = new List <UserRoleModel>();

            userRoles.Add(new UserRoleModel()
            {
                UserRoleID  = 1,
                UserID      = 1,
                RoleID      = 1,
                Name        = "System Admin",
                Description = "Full access across the application"
            });
            userRoles.Add(new UserRoleModel()
            {
                UserRoleID  = 1,
                UserID      = 2,
                RoleID      = 2,
                Name        = "Billing Admin",
                Description = "Only has access to the billing sections of the application"
            });
            userRoles.Add(new UserRoleModel()
            {
                UserRoleID  = 1,
                UserID      = 2,
                RoleID      = 1,
                Name        = "System Admin",
                Description = "Full access across the application"
            });

            var allUserRoles = new Response <UserRoleModel>()
            {
                DataItems = userRoles
            };

            //GetUsers
            Response <UserModel> userResponse = new Response <UserModel>();

            userResponse.DataItems = users.Where(u => u.UserName.Contains("")).ToList();
            mock.Setup(u => u.GetUsers(It.IsAny <string>())).Returns(allUsers);

            //Add User
            mock.Setup(u => u.AddUser(It.IsAny <UserModel>())).Callback((UserModel userModel) => users.Add(userModel)).Returns(allUsers);

            //UpdateUser
            mock.Setup(u => u.UpdateUser(It.IsAny <UserModel>())).Callback((UserModel userModel) => users.Add(userModel)).Returns(allUsers);

            //RemoveUser
            //Response<UserModel> removeUserResponse = new Response<UserModel>();
            //removeUserResponse.RowAffected = 1;
            //removeUserResponse.DataItems = users;

            //mock.Setup(u => u.RemoveUser(1, DateTime.UtcNow))).Callback((UserModel userModel) =>
            //    users.Remove(users.Find(deletedUser => deletedUser.UserID == userModel.UserID))).Returns(removeUserResponse);

            //ActivateUser
            mock.Setup(u => u.ActivateUser(It.IsAny <UserModel>())).Callback((UserModel userModel) => users.Add(userModel)).Returns(allUsers);

            //UnlockUser
            mock.Setup(u => u.UnlockUser(It.IsAny <UserModel>())).Callback((UserModel userModel) => users.Add(userModel)).Returns(allUsers);

            //GetUserRoles
            Response <UserRoleModel> userRoleResponse = new Response <UserRoleModel>();

            userRoleResponse.DataItems = userRoles.Where(u => u.Name.Contains("")).ToList();
            mock.Setup(u => u.GetUserRoles(It.IsAny <int>())).Returns(allUserRoles);

            //UserCredentialModel
            var userCredentialModel = new List <UserCredentialModel>();

            userCredentialModel.Add(new UserCredentialModel()
            {
                UserID         = 1,
                CredentialName = "System Admin",
                CredentialID   = 1,
                Description    = "Full access across the application"
            });
            var allUserRoles1 = new Response <UserCredentialModel>()
            {
                DataItems   = userCredentialModel,
                RowAffected = 1
            };

            //GetUsers
            Response <UserCredentialModel> userCredentialResponse = new Response <UserCredentialModel>();

            userCredentialResponse.DataItems   = userCredentialModel.Where(u => u.CredentialName.Contains("System Admin")).ToList();
            userCredentialResponse.RowAffected = 1;
            mock.Setup(u => u.GetUserCredentials(It.IsAny <int>())).Returns(userCredentialResponse);
        }