diff --git a/lib/hausaufgabenheft_logik/lib/src/open_homeworks/sort_and_subcategorization/todo_date_subcategorizer.dart b/lib/hausaufgabenheft_logik/lib/src/open_homeworks/sort_and_subcategorization/todo_date_subcategorizer.dart index 28eaf579f..29e6caf88 100644 --- a/lib/hausaufgabenheft_logik/lib/src/open_homeworks/sort_and_subcategorization/todo_date_subcategorizer.dart +++ b/lib/hausaufgabenheft_logik/lib/src/open_homeworks/sort_and_subcategorization/todo_date_subcategorizer.dart @@ -22,8 +22,8 @@ class TodoDateSubcategorizer extends Subcategorizer { List subcategorize(HomeworkList homeworks) { final latestHomeworkList = homeworks; final now = currentDate; - final tomorrow = now.addDaysWithNoChecking(1); - final in2Days = tomorrow.addDaysWithNoChecking(1); + final tomorrow = now.addDays(1); + final in2Days = tomorrow.addDays(1); final List overdueHomework = latestHomeworkList .where((h) => Date.fromDateTime(h.todoDate) < now) diff --git a/lib/hausaufgabenheft_logik/test/homework_page_bloc_test.dart b/lib/hausaufgabenheft_logik/test/homework_page_bloc_test.dart index 60ed70407..815ce3a43 100644 --- a/lib/hausaufgabenheft_logik/test/homework_page_bloc_test.dart +++ b/lib/hausaufgabenheft_logik/test/homework_page_bloc_test.dart @@ -35,10 +35,11 @@ void main() { late HomeworkPageBloc bloc; late InMemoryHomeworkRepository repository; late HomeworkSortingCache homeworkSortingCache; + late KeyValueStore kvs; setUp(() { repository = createRepositoy(); - final kvs = InMemoryKeyValueStore(); + kvs = InMemoryKeyValueStore(); bloc = createBloc(repository, keyValueStore: kvs); homeworkSortingCache = HomeworkSortingCache(kvs); }); @@ -53,6 +54,24 @@ void main() { } } + test( + // https://github.com/SharezoneApp/sharezone-app/issues/53 + // https://github.com/SharezoneApp/sharezone-app/pull/1134 + 'Regressions test: Shows "Morgen" as section title if today is end of month (e.g. 31.10) and tomorrow is first of next month (e.g. 01.11)', + () async { + bloc = createBloc(repository, + keyValueStore: kvs, getCurrentDateTime: () => DateTime(2023, 10, 31)); + await addToRepository([ + createHomework( + id: 'hw', todoDate: const Date(year: 2023, month: 11, day: 1)) + ]); + + bloc.add(LoadHomeworks()); + + Success success = await bloc.stream.whereType().first; + expect(success.open.sections.first.title, 'Morgen'); + }); + test( 'Regressions Test für #954 "Wenn man Hausaufgaben nach Fach sortiert und dann eine Aufgabe abhakt wechselt die App automatisch wieder in die Ansicht nach Datum."', () async { @@ -277,8 +296,8 @@ void main() { }); test('date subcategory titles are only shown when necessary', () async { - final tomorrow = createHomework( - title: 'abc', todoDate: Date.now().addDaysWithNoChecking(1)); + final tomorrow = + createHomework(title: 'abc', todoDate: Date.now().addDays(1)); await addToRepository([tomorrow]); bloc.add(LoadHomeworks());