diff --git a/lib/src/app/data.dart b/lib/src/app/data.dart index c5ff0e661f..f4e06a4834 100644 --- a/lib/src/app/data.dart +++ b/lib/src/app/data.dart @@ -106,14 +106,19 @@ class DataClient { } extension FilterUtils on Filter { - Filter withDateTimeCaptureInterval(DateTime start, DateTime end) { - setDateTimeCaptureInterval(start, end); + Filter withDateTimeCaptureInterval({DateTime? start, DateTime? end}) { + setDateTimeCaptureInterval(start: start, end: end); return this; } - void setDateTimeCaptureInterval(DateTime start, DateTime end) { - interval = CaptureInterval() - ..start = (Timestamp()..seconds = Int64((start.millisecondsSinceEpoch / 1000).floor())) - ..end = (Timestamp()..seconds = Int64((end.millisecondsSinceEpoch / 1000).floor())); + void setDateTimeCaptureInterval({DateTime? start, DateTime? end}) { + final interval = CaptureInterval(); + if (start != null) { + interval.start = Timestamp()..seconds = Int64((start.millisecondsSinceEpoch / 1000).floor()); + } + if (end != null) { + interval.end = Timestamp()..seconds = Int64((end.millisecondsSinceEpoch / 1000).floor()); + } + this.interval = interval; } } diff --git a/test/unit_test/app/data_client_test.dart b/test/unit_test/app/data_client_test.dart index cac8d58f6d..317e87e458 100644 --- a/test/unit_test/app/data_client_test.dart +++ b/test/unit_test/app/data_client_test.dart @@ -101,7 +101,7 @@ void main() { final start = DateTime(2020, 12, 31); final end = DateTime(2021, 12, 31); - filter.setDateTimeCaptureInterval(start, end); + filter.setDateTimeCaptureInterval(start: start, end: end); expect(filter.interval.start.seconds.toInt(), equals(start.millisecondsSinceEpoch / 1000)); expect(filter.interval.end.seconds.toInt(), equals(end.millisecondsSinceEpoch / 1000)); }); @@ -111,7 +111,7 @@ void main() { final start = DateTime(2020, 12, 31); final end = DateTime(2021, 12, 31); - filter = filter.withDateTimeCaptureInterval(start, end); + filter = filter.withDateTimeCaptureInterval(start: start, end: end); expect(filter.interval.start.seconds.toInt(), equals(start.millisecondsSinceEpoch / 1000)); expect(filter.interval.end.seconds.toInt(), equals(end.millisecondsSinceEpoch / 1000)); });