namespace LCU.API.Internal.LoanRateLoadTestingLib.Extensions.Queryables; public static class LoadTestRunInfoRunTimeQueryable { public static IQueryable FilterByRunTime(this IQueryable queryable, LoadTestRunInfoFilter loadTestRunInfoFilter) { if (loadTestRunInfoFilter.StartTimeStamp == null && loadTestRunInfoFilter.EndTimeStamp == null) { return queryable; } if (loadTestRunInfoFilter.StartTimeStamp == null) { loadTestRunInfoFilter.StartTimeStamp = DateTime.MinValue; } return queryable.Where(loadTestRunInfo => loadTestRunInfo.StartTimeStamp >= loadTestRunInfoFilter.StartTimeStamp && (loadTestRunInfoFilter.InProgress || !loadTestRunInfoFilter.EndTimeStamp.HasValue || loadTestRunInfo.StartTimeStamp <= loadTestRunInfoFilter.EndTimeStamp)); } }