feat(library): 支持设备追剧与观看历史

This commit is contained in:
Zhou Weidong committed 2026-10-27 09:54:51 +08:00
1 parent 4c3acb047c
commit 0d785bf1f8
12 files changed
+232 -76

No files matched your search

+16 -3
View File
@@ -4,8 +4,11 @@ import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:fruitshorts/core/data/remote/api_client.dart';
import 'package:fruitshorts/core/data/remote/auth_api.dart';
import 'package:fruitshorts/core/data/repositories/catalog_repository.dart';
import 'package:fruitshorts/core/data/repositories/watch_history_repository.dart';
import 'package:fruitshorts/core/data/services/auth_controller.dart';
import 'package:fruitshorts/core/data/services/auth_session_store.dart';
import 'package:fruitshorts/core/platform/haptics.dart';
import 'package:fruitshorts/core/theme/app_colors.dart';
import 'package:fruitshorts/core/theme/app_theme.dart';
import 'package:fruitshorts/l10n/app_localizations.dart';
@@ -15,6 +18,8 @@ import 'package:shared_preferences_platform_interface/in_memory_shared_preferenc
import 'package:shared_preferences_platform_interface/shared_preferences_async_platform_interface.dart';
import '../support/fake_http_adapter.dart';
import '../support/fake_catalog.dart';
import '../support/fake_haptics.dart';
void main() {
setUp(() {
@@ -92,8 +97,15 @@ void main() {
);
await tester.pumpWidget(
ChangeNotifierProvider<AuthController>.value(
value: auth,
MultiProvider(
providers: [
ChangeNotifierProvider<AuthController>.value(value: auth),
Provider<WatchHistoryRepository>.value(
value: InMemoryWatchHistoryRepository(),
),
Provider<CatalogRepository>.value(value: FakeCatalogRepository()),
Provider<Haptics>.value(value: FakeHaptics()),
],
child: MaterialApp(
theme: AppTheme.dark(),
darkTheme: AppTheme.dark(),
@@ -111,7 +123,8 @@ void main() {
find.byKey(const Key('watch-records-page')),
);
expect(scaffold.backgroundColor, AppColors.ink);
expect(find.byKey(const Key('auth-gate-panel')), findsOneWidget);
expect(find.byKey(const Key('auth-gate-panel')), findsNothing);
expect(find.byKey(const Key('watch-records-empty')), findsOneWidget);
expect(find.byType(Scaffold), findsOneWidget);
});
}