public void ShouldGetAllOrderedByDate() { // Arrange var options = new DbContextOptionsBuilder <DeskBookerContext>() .UseInMemoryDatabase(databaseName: "ShouldGetAllOrderedByDate") .Options; var storedList = new List <DeskBooking> { CreateDeskBooking(1, new DateTime(2020, 1, 27)), CreateDeskBooking(2, new DateTime(2020, 1, 25)), CreateDeskBooking(3, new DateTime(2020, 1, 29)) }; var expectedList = storedList .OrderBy(x => x.Date) .ToList(); using (var context = new DeskBookerContext(options)) { foreach (var deskBooking in storedList) { context.Add(deskBooking); } context.SaveChanges(); } // Act List <DeskBooking> actualList; using (var context = new DeskBookerContext(options)) { var repository = new DeskBookingRepository(context); actualList = repository.GetAll().ToList(); } // Assert CollectionAssert.AreEqual(expectedList, actualList, new DeskBookingEqualityComparer()); }
public void ShouldSaveTheDeskBooking() { //arrange var options = new DbContextOptionsBuilder <DeskBookerContext>() .UseInMemoryDatabase(databaseName: "ShouldSaveTheDeskBooking") .Options; var deskBooking = new DeskBooking { FirstName = "John", LastName = "Doe", Date = new DateTime(2021, 5, 5), Email = "*****@*****.**", DeskId = 1 }; //act using (var context = new DeskBookerContext(options)) { var repository = new DeskBookingRepository(context); repository.Save(deskBooking); } //assert using (var context = new DeskBookerContext(options)) { var bookings = context.DeskBookings.ToList(); var storedDeskBooking = bookings.First(); Assert.That(bookings, Has.Count.EqualTo(1)); Assert.That(deskBooking.FirstName, Is.EqualTo(storedDeskBooking.FirstName)); Assert.That(deskBooking.LastName, Is.EqualTo(storedDeskBooking.LastName)); Assert.That(deskBooking.Email, Is.EqualTo(storedDeskBooking.Email)); Assert.That(deskBooking.DeskId, Is.EqualTo(storedDeskBooking.DeskId)); Assert.That(deskBooking.Date, Is.EqualTo(storedDeskBooking.Date)); } }