public void FakeConnectionCheckerChangesVehicleStatus() { // Arrange var customers = customersRepo.GetCustomers(); var connectionChecker = new FakeConnectionChecker(); // Act connectionChecker.CheckVehiclesConnection(customers); // Assert // Check if any connection status is changed var statusChanged = customers.SelectMany(customer => customer.OwnedVehicles).Any(vehicle => vehicle.Status); Assert.IsNotNull(statusChanged); }
public void FakeConnectionCheckerReturnsRandomVehicleStatus() { // Arrange var customers = customersRepo.GetCustomers(); var connectionChecker = new FakeConnectionChecker(); // Act connectionChecker.CheckVehiclesConnection(customers); var firstCheckStatus = customers.First().OwnedVehicles.First().Status; System.Threading.Thread.Sleep(100); connectionChecker.CheckVehiclesConnection(customers); var secondCheckStatus = customers.First().OwnedVehicles.First().Status; System.Threading.Thread.Sleep(100); connectionChecker.CheckVehiclesConnection(customers); var thirdCheckStatus = customers.First().OwnedVehicles.First().Status; // Assert // Check if the connection status is changed between 3 attempts Assert.IsTrue(firstCheckStatus != secondCheckStatus || secondCheckStatus != thirdCheckStatus || firstCheckStatus != thirdCheckStatus); }