import 'package:flutter_test/flutter_test.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:travel_mate/models/reminder_item.dart'; import 'package:travel_mate/services/reminder_service.dart'; void main() { const tripId = 'trip-reminders-1'; late ReminderService service; setUp(() { SharedPreferences.setMockInitialValues({}); service = ReminderService(); }); test('adds and toggles reminders', () async { final r = ReminderItem.newItem( id: 'r1', title: 'Check-in en ligne', dueAt: DateTime.utc(2026, 4, 10, 7), ); await service.addReminder(tripId, r); var list = await service.loadReminders(tripId); expect(list.single.isDone, isFalse); list = await service.toggleReminder(tripId, 'r1'); expect(list.single.isDone, isTrue); }); test('deletes and clears corrupted payload', () async { final r = ReminderItem.newItem( id: 'r1', title: 'Acheter métro pass', dueAt: DateTime.utc(2026, 4, 1), ); await service.addReminder(tripId, r); var list = await service.deleteReminder(tripId, 'r1'); expect(list, isEmpty); final prefs = await SharedPreferences.getInstance(); await prefs.setString('reminders_$tripId', 'oops'); list = await service.loadReminders(tripId); expect(list, isEmpty); expect(prefs.getString('reminders_$tripId'), isNull); }); }