public async Task DeleteCustomerVehicle_Should_ThrowError_WhenVehicleDoesNotExists()
 {
     // Arrange
     var sut = new CustomerVehicleService(repo, new MockVehicleDataService());
     // Act & Assert
     await Assert.ThrowsAsync <Exception>(async() => await sut.DeleteCustomerVehicle(Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid()));
 }
        public async Task DeleteCustomerVehicle_Should_ReturnWithoutError()
        {
            // Arrange
            var v1 = new CustomerVehicle {
                CustomerId = Guid.NewGuid(), ClientId = Guid.NewGuid()
            };
            await repo.Create(v1, v1.CustomerId, v1.ClientId);

            var sut = new CustomerVehicleService(repo, new MockVehicleDataService());
            // Act
            var ex = await Record.ExceptionAsync(async() => await sut.DeleteCustomerVehicle(v1.Id, v1.CustomerId, v1.ClientId));

            // Assert
            Assert.Null(ex);
        }
        public async Task DeleteCustomerVehicle_Should_NotFindVehicleAfterDelete()
        {
            // Arrange
            var v1 = new CustomerVehicle {
                Registration = "EF02VCC"
            };
            await repo.Create(v1, Guid.NewGuid(), Guid.NewGuid());

            var sut = new CustomerVehicleService(repo, new MockVehicleDataService());
            // Act
            await sut.DeleteCustomerVehicle(v1.Id, v1.CustomerId, v1.ClientId);

            var result = (await repo.FindAllByCustomer(v1.CustomerId, v1.ClientId)).FirstOrDefault(x => x.Registration == "EF02VCC");

            // Assert
            Assert.Null(result);
        }