public void FilterFlightLog_NoSearchParameters_ReturnsFullList()
        {
            // Arrange
            FlightLogUtility     flightLogUtility = new FlightLogUtility();
            List <FlightLogInfo> flightLog        = FlightLogUtilityTestData.SampleFlightLog;

            // Act
            List <FlightLogInfo> filteredFlightLog = flightLogUtility.FilterFlightLog(
                flightLog, "", null, null);

            // Assert
            Assert.Equal(flightLog.Count, filteredFlightLog.Count);
        }
        public void FilterFlightLog_OnlyProvidingSearchTerm_FiltersOutMismatches(
            string searchTerm,
            int expectedAmount)
        {
            // Arrange
            FlightLogUtility     flightLogUtility = new FlightLogUtility();
            List <FlightLogInfo> flightLog        = FlightLogUtilityTestData.SampleFlightLog;
            int nrOfItemsMatchingSearchParameters = Utility.CountItemsMatchingSearchParameters(
                flightLog, searchTerm, null, null);

            // Act
            List <FlightLogInfo> filteredFlightLog = flightLogUtility.FilterFlightLog(
                flightLog, searchTerm, null, null);

            // Assert
            Assert.Equal(expectedAmount, filteredFlightLog.Count);
            Assert.Equal(nrOfItemsMatchingSearchParameters, filteredFlightLog.Count);
        }
        public void FilterFlightLog_OnlyProvidingDateTimes_FiltersOutMismatches(
            DateTime?startDate,
            DateTime?endDate,
            int expectedAmount)
        {
            // Arrange
            FlightLogUtility     flightLogUtility = new FlightLogUtility();
            List <FlightLogInfo> flightLog        = FlightLogUtilityTestData.SampleFlightLog;
            int nrOfItemsMatchingSearchParameters = Utility.CountItemsMatchingSearchParameters(
                flightLog, "", startDate, endDate);

            // Act
            List <FlightLogInfo> filteredFlightLog = flightLogUtility.FilterFlightLog(
                flightLog, "", startDate, endDate);

            // Assert
            Assert.Equal(expectedAmount, filteredFlightLog.Count);
            Assert.Equal(nrOfItemsMatchingSearchParameters, filteredFlightLog.Count);
        }