public async Task GetAllRooms_ShouldReturnCorrectCount() { // Arrange MapperInitializer.InitializeMapper(); var context = HotelDbContextInMemoryFactory.InitializeContext(); var seeder = new RoomsServiceTestsSeeder(); await seeder.SeedRoomAsync(context); var roomsRepository = new EfDeletableEntityRepository <Room>(context); var roomTypesRepository = new EfDeletableEntityRepository <RoomType>(context); var roomsService = this.GetRoomsService(roomsRepository, roomTypesRepository, context); // Act var actualResult = roomsService.GetAllRooms <AvailableRoomViewModel>().ToList(); var expectedResult = new AvailableRoomViewModel[] { new AvailableRoomViewModel { Id = roomsRepository.All().First().Id, RoomNumber = "Test-1", Description = "TestDescription", }, }; Assert.Equal(expectedResult.Length, actualResult.Count()); }
public async Task GetRoomByIdAsync_WithExistentId_ShouldReturnCorrectResult() { var errorMessagePrefix = "RoomService GetByIdAsync() method does not work properly."; // Arrange MapperInitializer.InitializeMapper(); var context = HotelDbContextInMemoryFactory.InitializeContext(); var seeder = new RoomsServiceTestsSeeder(); await seeder.SeedRoomAsync(context); var roomsRepository = new EfDeletableEntityRepository <Room>(context); var roomTypesRepository = new EfDeletableEntityRepository <RoomType>(context); var roomsService = this.GetRoomsService(roomsRepository, roomTypesRepository, context); var roomId = roomsRepository.All().First().Id; // Act var actualResult = await roomsService.GetRoomByIdAsync(roomId); var expectedResult = await roomsRepository .All() .SingleOrDefaultAsync(x => x.Id == roomId); // Assert Assert.True(expectedResult.Id == actualResult.Id, errorMessagePrefix + " " + "Id is not returned properly."); Assert.True(expectedResult.RoomNumber == actualResult.RoomNumber, errorMessagePrefix + " " + "RoomNumer is not returned properly."); Assert.True(expectedResult.Description == actualResult.Description, errorMessagePrefix + " " + "Description are not returned properly."); Assert.True(expectedResult.RoomTypeId == actualResult.RoomTypeId, errorMessagePrefix + " " + "RoomTypeId is not returned properly."); }
public async Task GetAllRooms_ShouldReturnCorrectResult() { var errorMessagePrefix = "RoomsService GetAllRooms() method does not work properly."; // Arrange MapperInitializer.InitializeMapper(); var context = HotelDbContextInMemoryFactory.InitializeContext(); var seeder = new RoomsServiceTestsSeeder(); await seeder.SeedRoomAsync(context); var roomsRepository = new EfDeletableEntityRepository <Room>(context); var roomTypesRepository = new EfDeletableEntityRepository <RoomType>(context); var roomsService = this.GetRoomsService(roomsRepository, roomTypesRepository, context); // Act var actualResult = roomsService.GetAllRooms <AvailableRoomViewModel>().ToList(); var expectedResult = new AvailableRoomViewModel[] { new AvailableRoomViewModel { Id = roomsRepository.All().First().Id, RoomNumber = "Test-1", Description = "TestDescription", }, }; Assert.True(expectedResult[0].Id == actualResult[0].Id, errorMessagePrefix + " " + "Id is not returned properly."); Assert.True(expectedResult[0].RoomNumber == actualResult[0].RoomNumber, errorMessagePrefix + " " + "RoomNumer is not returned properly."); Assert.True(expectedResult[0].Description == actualResult[0].Description, errorMessagePrefix + " " + "Description are not returned properly."); }
public async Task DeleteByIdAsync_WithExistentId_ShouldSuccessfullyDelete() { var errorMessagePrefix = "RecipeService DeleteByIdAsync() method does not work properly."; // Arrange MapperInitializer.InitializeMapper(); var context = HotelDbContextInMemoryFactory.InitializeContext(); var seeder = new RoomsServiceTestsSeeder(); await seeder.SeedRoomAsync(context); var roomsRepository = new EfDeletableEntityRepository <Room>(context); var roomTypesRepository = new EfDeletableEntityRepository <RoomType>(context); var roomsService = this.GetRoomsService(roomsRepository, roomTypesRepository, context); var roomId = roomsRepository.All().First().Id; // Act var roomsCount = roomsRepository.All().Count(); await roomsService.DeleteByIdAsync(roomId); var actualResult = roomsRepository.All().Count(); var expectedResult = roomsCount - 1; // Assert Assert.True(actualResult == expectedResult, errorMessagePrefix + " " + "Recipes count is not reduced."); }