예제 #1
0
        public void Test_DeleteConfirmed()
        {
            HotelRoomViewModel t = new HotelRoomViewModel()
            {
                Size = 2,
                Type = HotelRoomType.Workroom
            };
            IHotelTamagotchiContext c  = new FakeHotelTamagotchiContext();
            IHotelRoomRepository    tr = new HotelRoomRepository(c);
            HotelRoomController     tc = new HotelRoomController(tr);
            var ccMock = new Mock <ControllerContext>();

            ccMock.SetupGet(x => x.HttpContext.Session["User"]).Returns("testUser");
            ccMock.SetupGet(x => x.HttpContext.Session["Role"]).Returns(UserRole.Staff);
            tc.ControllerContext = ccMock.Object;

            tc.Create(t);
            tc.DeleteConfirmed(t.Id);

            Assert.IsFalse(tr.GetAll().Contains(t));
        }
예제 #2
0
        public async void CanDeleteRoom()
        {
            /// Can delete a hotel room
            DbContextOptions <AsyncInnDbContext> options = new DbContextOptionsBuilder <AsyncInnDbContext>().UseInMemoryDatabase("DeleteHotelRoom").Options;

            using (AsyncInnDbContext context = new AsyncInnDbContext(options))
            {
                HotelRoom hoRoom = new HotelRoom();
                hoRoom.HotelID     = 80;
                hoRoom.RoomNumber  = 77;
                hoRoom.RoomID      = 81;
                hoRoom.Rate        = 350;
                hoRoom.PetFriendly = true;

                HotelRoomController hotController = new HotelRoomController(context);
                await hotController.Create(hoRoom);

                await hotController.DeleteConfirmed(hoRoom.HotelID, hoRoom.RoomNumber);

                var result = context.HotelRoom.FirstOrDefault(ho => ho.HotelID == hoRoom.HotelID && ho.RoomNumber == hoRoom.RoomNumber);

                Assert.Null(result);
            }
        }