import 'package:drift/native.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:plezy/database/app_database.dart'; import 'package:plezy/services/data_aggregation_service.dart'; import 'package:plezy/services/multi_server_manager.dart'; /// Smoke tests for the surviving cross-server aggregation surface on /// [DataAggregationService]. Single-server passthroughs were removed in /// favour of `context.tryGetMediaClientForServer(...).()`; what's /// left here is the multi-client fan-out, which is testable without a /// real backend by simply asserting the empty-state behaviour. void main() { late AppDatabase db; late MultiServerManager manager; late DataAggregationService service; setUp(() { db = AppDatabase.forTesting(NativeDatabase.memory()); manager = MultiServerManager(); service = DataAggregationService(manager); }); tearDown(() async { manager.dispose(); await db.close(); }); group('DataAggregationService cross-server aggregation', () { test('getMediaLibrariesFromAllServers returns empty when no clients connected', () async { expect(await service.getMediaLibrariesFromAllServers(), isEmpty); }); test('searchAcrossServers and getOnDeckFromAllServers return empty when no clients', () async { expect(await service.searchAcrossServers('hello'), isEmpty); expect(await service.getOnDeckFromAllServers(), isEmpty); }); }); }