import 'package:flutter_test/flutter_test.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:travel_mate/models/album_photo.dart'; import 'package:travel_mate/services/album_service.dart'; void main() { const tripId = 'trip-album-1'; late AlbumService service; setUp(() { SharedPreferences.setMockInitialValues({}); service = AlbumService(); }); test('adds and loads photos', () async { final photo = AlbumPhoto.newPhoto( id: 'p1', url: 'https://example.com/img.jpg', caption: 'Coucher de soleil', uploadedBy: 'Alice', ); await service.addPhoto(tripId, photo); final loaded = await service.loadPhotos(tripId); expect(loaded.single.url, contains('example.com')); }); test('deletes photo and clears corrupted payload', () async { final p = AlbumPhoto.newPhoto(id: 'p1', url: 'u', caption: null); await service.addPhoto(tripId, p); var updated = await service.deletePhoto(tripId, 'p1'); expect(updated, isEmpty); final prefs = await SharedPreferences.getInstance(); await prefs.setString('album_$tripId', 'oops'); updated = await service.loadPhotos(tripId); expect(updated, isEmpty); expect(prefs.getString('album_$tripId'), isNull); }); }