public void Invoke_FromSuperAdminToSuperAdmin_NotSavedInDatabase() { // Prepare var dataUser = new DataAccess.Models.User { IsSuperAdmin = true }; var getAllResults = new List <UserApps>(); var mockedUserAppsRepository = new Mock <IUserAppRepository>(); var mockedUserRepository = new Mock <IUserRepository>(); var mockedAddNewUserApp = new Mock <IAddNewUserApp>(); mockedUserRepository.Setup(r => r.GetById(It.IsAny <int>())) .Returns(dataUser); mockedUserAppsRepository.Setup(r => r.FindBy(It.IsAny <Expression <Func <UserApps, bool> > >())) .Returns(getAllResults.AsQueryable()); var action = new RevokeRole(mockedUserAppsRepository.Object, mockedUserRepository.Object, mockedAddNewUserApp.Object); // Action var actionResult = action.Invoke(1, 1, Enums.UserRole.SuperAdmin); // Check Assert.False(actionResult); mockedUserAppsRepository.Verify(r => r.Edit(It.IsAny <UserApps>()), Times.Never); mockedUserAppsRepository.Verify(r => r.Save(), Times.Never); mockedUserRepository.Verify(r => r.Edit(It.IsAny <DataAccess.Models.User>()), Times.Never); mockedUserRepository.Verify(r => r.Save(), Times.Never); mockedAddNewUserApp.Verify(r => r.Invoke(It.IsAny <UserAppModel>()), Times.Never); }
public void Invoke_UserNotHaveAnyApp_NotSavedInDatabase() { // Prepare var dataUser = new DataAccess.Models.User { IsSuperAdmin = false }; var mockedUserAppsRepository = new Mock <IUserAppRepository>(); var mockedUserRepository = new Mock <IUserRepository>(); var mockedAddNewUserApp = new Mock <IAddNewUserApp>(); mockedUserRepository.Setup(r => r.GetById(It.IsAny <int>())) .Returns(dataUser); var action = new RevokeRole(mockedUserAppsRepository.Object, mockedUserRepository.Object, mockedAddNewUserApp.Object); // Action var actionResult = action.Invoke(1, 1, Enums.UserRole.Manager); // Check Assert.False(actionResult); mockedUserRepository.Verify(r => r.Edit(It.IsAny <DataAccess.Models.User>()), Times.Never); mockedUserRepository.Verify(r => r.Save(), Times.Never); mockedAddNewUserApp.Verify(r => r.Invoke(It.IsAny <UserAppModel>()), Times.Never); mockedUserAppsRepository.Verify(r => r.Edit(It.IsAny <UserApps>()), Times.Never); mockedUserAppsRepository.Verify(r => r.Save(), Times.Never); }
public void Invoke_LowerRoleThanSuperAdminNotInApp_SavedInDatabase() { // Prepare var dataUser = new DataAccess.Models.User { IsSuperAdmin = true }; var mockedUserAppsRepository = new Mock <IUserAppRepository>(); var mockedUserRepository = new Mock <IUserRepository>(); var mockedAddNewUserApp = new Mock <IAddNewUserApp>(); var savedUser = dataUser; mockedUserRepository.Setup(r => r.GetById(It.IsAny <int>())) .Returns(dataUser); mockedUserRepository.Setup(r => r.Edit(It.IsAny <DataAccess.Models.User>())) .Callback <DataAccess.Models.User>(user => savedUser = user); var action = new RevokeRole(mockedUserAppsRepository.Object, mockedUserRepository.Object, mockedAddNewUserApp.Object); // Action var actionResult = action.Invoke(1, 1, Enums.UserRole.Manager); // Check Assert.True(actionResult); mockedUserRepository.Verify(r => r.Edit(It.IsAny <DataAccess.Models.User>()), Times.Once); mockedUserRepository.Verify(r => r.Save(), Times.Once); mockedAddNewUserApp.Verify(r => r.Invoke(It.IsAny <UserAppModel>()), Times.Once); mockedUserAppsRepository.Verify(r => r.Edit(It.IsAny <UserApps>()), Times.Never); mockedUserAppsRepository.Verify(r => r.Save(), Times.Never); Assert.False(savedUser.IsSuperAdmin); }
public void Invoke_LowerRoleThanSuperAdminInApp_SavedInDatabase() { // Prepare var dataUser = new DataAccess.Models.User { IsSuperAdmin = true }; var dataUserApp = new UserApps { User = new DataAccess.Models.User { Id = 1 }, App = new DataAccess.Models.App { Id = 1 }, Role = UserRole.Manager }; var mockedUserAppsRepository = new Mock <IUserAppRepository>(); var mockedUserRepository = new Mock <IUserRepository>(); var mockedAddNewUserApp = new Mock <IAddNewUserApp>(); var savedUser = dataUser; var dataUserAppSaved = dataUserApp; var getUserAppResults = new List <UserApps> { dataUserApp }; mockedUserRepository.Setup(r => r.GetById(It.IsAny <int>())) .Returns(dataUser); mockedUserRepository.Setup(r => r.Edit(It.IsAny <DataAccess.Models.User>())) .Callback <DataAccess.Models.User>(user => savedUser = user); mockedUserAppsRepository.Setup(r => r.FindBy(It.IsAny <Expression <Func <UserApps, bool> > >())) .Returns(getUserAppResults.AsQueryable()); mockedUserAppsRepository.Setup(r => r.Edit(It.IsAny <UserApps>())) .Callback <UserApps>(userApp => dataUserAppSaved = userApp); var action = new RevokeRole(mockedUserAppsRepository.Object, mockedUserRepository.Object, mockedAddNewUserApp.Object); // Action var actionResult = action.Invoke(1, 1, Enums.UserRole.Manager); // Check Assert.True(actionResult); mockedUserRepository.Verify(r => r.Edit(It.IsAny <DataAccess.Models.User>()), Times.Once); mockedUserRepository.Verify(r => r.Save(), Times.Once); mockedAddNewUserApp.Verify(r => r.Invoke(It.IsAny <UserAppModel>()), Times.Never); mockedUserAppsRepository.Verify(r => r.Edit(It.IsAny <UserApps>()), Times.Never); mockedUserAppsRepository.Verify(r => r.Save(), Times.Never); Assert.False(savedUser.IsSuperAdmin); Assert.Equal(UserRole.Manager, dataUserAppSaved.Role); }
public void Invoke_IncorrectUserData_NotSavedInDatabase() { // Prepare var mockedUserAppsRepository = new Mock <IUserAppRepository>(); var mockedUserRepository = new Mock <IUserRepository>(); var mockedAddNewUserApp = new Mock <IAddNewUserApp>(); var action = new RevokeRole(mockedUserAppsRepository.Object, mockedUserRepository.Object, mockedAddNewUserApp.Object); // Action var actionResult = action.Invoke(1, 1, Enums.UserRole.User); // Check Assert.False(actionResult); mockedUserAppsRepository.Verify(r => r.Edit(It.IsAny <UserApps>()), Times.Never); mockedUserAppsRepository.Verify(r => r.Save(), Times.Never); mockedUserRepository.Verify(r => r.Edit(It.IsAny <DataAccess.Models.User>()), Times.Never); mockedUserRepository.Verify(r => r.Save(), Times.Never); mockedAddNewUserApp.Verify(r => r.Invoke(It.IsAny <UserAppModel>()), Times.Never); }