public async Task RemoveFromPersonnel_ValidUser_FacilityIdIsNullAsync() { const string FACILITY_NAME = "TestFacility"; string userId = Guid.NewGuid().ToString(); string facilityId = Guid.NewGuid().ToString(); var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); await dbContext.Facilities.AddAsync(new Facility(FACILITY_NAME, DateTime.Now, DateTime.Now) { IsDeleted = false, NameNormalized = FACILITY_NAME, Operators = new List <User>(), Id = facilityId }); await dbContext.SaveChangesAsync(); await dbContext.Users.AddAsync(new User("TestName", "TestUserName", "*****@*****.**", DateTime.Now) { Id = userId, FacilityId = facilityId }); await dbContext.SaveChangesAsync(); await service.RemoveFromPersonnelAsync(userId); Assert.AreEqual(0, dbContext.Facilities.Include(f => f.Operators).First(f => f.Id == facilityId).Operators.Count); Assert.IsNull(dbContext.Users.Find(userId).FacilityId); }
public async Task AddPersonnel_IvalidUser_VerifyNoOperators() { const string TEST_QUALIFICATION_NAME = "TestQualification"; const string FACILITY_NAME = "TestFacility"; const string USER_FULLNAME = "TestName"; string userId = Guid.NewGuid().ToString(); string facilityId = Guid.NewGuid().ToString(); var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); await dbContext.Facilities.AddAsync(new Facility(FACILITY_NAME, DateTime.Now, DateTime.Now) { Id = facilityId, Operators = new List <User>(), IsDeleted = false, NameNormalized = FACILITY_NAME.ToUpperInvariant() }); await dbContext.Roles.AddAsync(new IdentityRole(Roles.PERSONNEL) { NormalizedName = Roles.PERSONNEL.ToUpperInvariant() }); await dbContext.Qualification.AddAsync(new Qualification(TEST_QUALIFICATION_NAME) { NameNormalized = TEST_QUALIFICATION_NAME.ToUpperInvariant() }); await dbContext.SaveChangesAsync(); await dbContext.Users.AddAsync(new User(USER_FULLNAME, "TestUserName", "*****@*****.**", DateTime.Now) { QualificationId = dbContext.Qualification.First(q => q.NameNormalized == TEST_QUALIFICATION_NAME.ToUpperInvariant()).Id, Id = userId }); await dbContext.SaveChangesAsync(); await dbContext.UserRoles.AddAsync(new IdentityUserRole <string>() { RoleId = dbContext.Roles.First(f => f.NormalizedName == Roles.PERSONNEL.ToUpperInvariant()).Id, UserId = dbContext.Users.First(f => f.FullName == USER_FULLNAME).Id }); await dbContext.SaveChangesAsync(); await service.AddPersonnelAsync(new AddPersonnelModel() { FacilityId = facilityId, PersonnelIds = new[] { userId }, }); Assert.IsNull((await dbContext.Users.FindAsync(userId)).FacilityId); Assert.AreEqual(0, dbContext.Facilities.Include(f => f.Operators).First(f => f.Id == facilityId).Operators.Count); }
public void All_WithNone_ReturnEmptyCollection() { var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); IEnumerable <FacilityConciseViewModel> results = service.All(); Assert.IsNotNull(results); Assert.AreEqual(0, results.ToList().Count); }
public async Task RemoveFromPersonnel_InvalidUser_FacilityIdIsNull() { string userId = Guid.NewGuid().ToString(); var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); await service.RemoveFromPersonnelAsync(userId); Assert.IsFalse(dbContext.Users.Any(u => u.Id == userId)); }
public async Task Delete_WithIvalid_NotDoAnything() { var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); string facilityId = Guid.NewGuid().ToString(); await service.DeleteAsync(facilityId); Assert.IsFalse(dbContext.Qualification.Any(f => f.Id == facilityId)); }
public async Task Add_NewEntity_Created() { var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); await service.AddAsync(new FacilityCreateBindingModel() { Name = "Test", ClosingTime = DateTime.Now, OpeningTime = DateTime.Now }); Assert.AreEqual(1, dbContext.Facilities.Count()); }
public async Task Delete_WithOne_NotExistingAsync() { var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); string itemId = Guid.NewGuid().ToString(); await dbContext.Facilities.AddAsync(new Facility("Test", DateTime.Now, DateTime.Now) { Id = itemId }); await dbContext.SaveChangesAsync(); await service.DeleteAsync(itemId); Assert.IsTrue(dbContext.Facilities.Find(itemId).IsDeleted); }
public async Task Add_DeleteEntity_Restored() { var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); await dbContext.Facilities.AddAsync(new Facility("Test", DateTime.Now, DateTime.Now) { IsDeleted = true, NameNormalized = "TEST" }); await dbContext.SaveChangesAsync(); await service.AddAsync(new FacilityCreateBindingModel() { Name = "Test", ClosingTime = DateTime.Now, OpeningTime = DateTime.Now }); Assert.AreEqual(1, dbContext.Facilities.Count()); Assert.IsFalse(dbContext.Facilities.First().IsDeleted); }
public async Task All_WithSome_ReturnAll() { await dbContext.Facilities.AddAsync(new Facility("Test1", DateTime.Now, DateTime.Now)); await dbContext.Facilities.AddAsync(new Facility("Test2", DateTime.Now, DateTime.Now)); await dbContext.Facilities.AddAsync(new Facility("Test3", DateTime.Now, DateTime.Now)); await dbContext.SaveChangesAsync(); var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); IEnumerable <FacilityConciseViewModel> results = service.All(); Assert.IsNotNull(results); Assert.AreEqual(3, results.ToList().Count); }
public async Task GetPersonnel_HaveSeveral_ReturnAll() { string facilityId = Guid.NewGuid().ToString(); var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); await dbContext.Facilities.AddAsync(new Facility("TestFacility", DateTime.Now, DateTime.Now) { Id = facilityId, Operators = new List <User>(), IsDeleted = false, NameNormalized = "TestFacility".ToUpperInvariant() }); await dbContext.SaveChangesAsync(); await dbContext.Users.AddRangeAsync( new User("TestName1", "TestUserName1", "*****@*****.**", DateTime.Now) { FacilityId = facilityId, Id = Guid.NewGuid().ToString() }, new User("TestName2", "TestUserName2", "*****@*****.**", DateTime.Now) { FacilityId = facilityId, Id = Guid.NewGuid().ToString() }, new User("TestName3", "TestUserName3", "*****@*****.**", DateTime.Now) { FacilityId = facilityId, Id = Guid.NewGuid().ToString() }, new User("TestName4", "TestUserName4", "*****@*****.**", DateTime.Now) { FacilityId = facilityId, Id = Guid.NewGuid().ToString() } ); await dbContext.SaveChangesAsync(); Assert.AreEqual(4, (await service.GetPersonnelAsync(facilityId)).Count()); }
public async Task RemoveFromPersonnel_ValidUserWithNoFacility_FacilityIdIsNullAsync() { string userId = Guid.NewGuid().ToString(); string facilityId = Guid.NewGuid().ToString(); var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); await dbContext.Users.AddAsync(new User("TestName", "TestUserName", "*****@*****.**", DateTime.Now) { Id = userId, }); await dbContext.SaveChangesAsync(); await service.RemoveFromPersonnelAsync(userId); Assert.IsNull(dbContext.Users.Find(userId).FacilityId); }
public async Task GetPersonnel_HaveNone_ReturnZero() { string facilityId = Guid.NewGuid().ToString(); var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); await dbContext.Facilities.AddAsync(new Facility("TestFacility", DateTime.Now, DateTime.Now) { Id = facilityId, Operators = new List <User>(), IsDeleted = false, NameNormalized = "TestFacility".ToUpperInvariant() }); await dbContext.SaveChangesAsync(); Assert.AreEqual(0, (await service.GetPersonnelAsync(facilityId)).Count()); }
public async Task AddPersonnel_NoUsers_VerifyNoOperators() { const string FACILITY_NAME = "TestFacility"; string facilityId = Guid.NewGuid().ToString(); var service = new AdminFacilityService(dbContext, userManager, roleManager, signInManager, new Mock <IServerNewsService>().Object); await dbContext.Facilities.AddAsync(new Facility(FACILITY_NAME, DateTime.Now, DateTime.Now) { Id = facilityId, Operators = new List <User>(), IsDeleted = false, NameNormalized = FACILITY_NAME.ToUpperInvariant() }); await service.AddPersonnelAsync(new AddPersonnelModel() { FacilityId = facilityId, PersonnelIds = new List <string>().ToArray() }); Assert.AreEqual(0, dbContext.Facilities.Include(f => f.Operators).First(f => f.Id == facilityId).Operators.Count); }