public void CarCantBeRentedForOverlapingTermsTest() { CarRecord carRecord = new CarRecord("Lada Granta", "cherry", "1234321"); DateTime startOfRent = new DateTime(2017, 1, 1); DateTime endOfRent = new DateTime(2017, 1, 20);; // арендуем первый раз bool carRentSuccess = carRecord.Rent(startOfRent, endOfRent); DateTime[] startRentDates = carRecord.getStartRentDates(); DateTime[] endRentDates = carRecord.getEndRentDates(); // 1. пробуем арендовать второй раз carRentSuccess = carRecord.Rent(startOfRent.AddDays(5), endOfRent.AddDays(5)); Assert.AreEqual(carRentSuccess, false); CollectionAssert.AreEqual(carRecord.getStartRentDates(), startRentDates); CollectionAssert.AreEqual(carRecord.getEndRentDates(), endRentDates); // 2. пробуем арендовать второй раз carRentSuccess = carRecord.Rent(startOfRent.AddDays(-5), endOfRent.AddDays(-5)); Assert.AreEqual(carRentSuccess, false); CollectionAssert.AreEqual(carRecord.getStartRentDates(), startRentDates); CollectionAssert.AreEqual(carRecord.getEndRentDates(), endRentDates); // 3. пробуем арендовать второй раз carRentSuccess = carRecord.Rent(startOfRent.AddDays(-5), endOfRent.AddDays(5)); Assert.AreEqual(carRentSuccess, false); CollectionAssert.AreEqual(carRecord.getStartRentDates(), startRentDates); CollectionAssert.AreEqual(carRecord.getEndRentDates(), endRentDates); // 4. пробуем арендовать второй раз carRentSuccess = carRecord.Rent(startOfRent.AddDays(-5), startOfRent); Assert.AreEqual(carRentSuccess, false); CollectionAssert.AreEqual(carRecord.getStartRentDates(), startRentDates); CollectionAssert.AreEqual(carRecord.getEndRentDates(), endRentDates); }
public void NewCarIsRentedFoProperTermTest() { CarRecord carRecord = new CarRecord("Lada Granta", "cherry", "1234321"); DateTime startOfRent = new DateTime(2017, 1, 1); DateTime endOfRent = startOfRent; bool isCarRented = carRecord.Rent(startOfRent, endOfRent); Assert.AreEqual(isCarRented, true); Assert.AreEqual(carRecord.getStartRentDates()[0], startOfRent); Assert.AreEqual(carRecord.getEndRentDates()[0], endOfRent); }
public void CarCanBeRentedSecondTimeForProperTermTest() { CarRecord carRecord = new CarRecord("Lada Granta", "cherry", "1234321"); DateTime[] startRentDates = { new DateTime(2017, 1, 1), new DateTime(2017, 1, 21) }; DateTime[] endRentDates = { new DateTime(2017, 1, 20), new DateTime(2017, 1, 22) }; // арендуем первый раз bool carRentSuccess = carRecord.Rent(startRentDates[0], endRentDates[0]); Assert.AreEqual(carRentSuccess, true); // арендуем 2 раз carRentSuccess = carRecord.Rent(startRentDates[1], endRentDates[1]); Assert.AreEqual(carRentSuccess, true); CollectionAssert.AreEqual(carRecord.getStartRentDates(), startRentDates); CollectionAssert.AreEqual(carRecord.getEndRentDates(), endRentDates); }