Files
plezy/test/services/data_aggregation_bridge_test.dart
T
2026-05-01 01:20:36 +02:00

39 lines
1.4 KiB
Dart

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(...).<method>()`; 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);
});
});
}