- 添加导航条目和分类数据模型 - 实现导航卡片网格展示 - 支持点击卡片打开链接 - 添加主题样式(渐变色、卡片阴影) - 区分系统默认和自定义条目 - 添加分类统计信息"
27 lines
871 B
Dart
27 lines
871 B
Dart
import '../domain/models/home_data.dart';
|
|
import '../domain/models/submit_site_draft.dart';
|
|
import 'home_repository.dart';
|
|
import 'mock_home_data.dart';
|
|
|
|
/// [HomeRepository] 的本地实现,返回 [mockHomeData]。
|
|
///
|
|
/// 单独建一个类而不是让页面直接读常量:页面因此只依赖接口,
|
|
/// 换成后端实现时不用碰界面代码,测试里也能注入任意数据集。
|
|
class MockHomeRepository implements HomeRepository {
|
|
const MockHomeRepository();
|
|
|
|
@override
|
|
Future<HomeData> fetchHomeData() async => mockHomeData;
|
|
|
|
@override
|
|
Future<void> submitSite(SubmitSiteDraft draft) async {
|
|
// mock 实现什么都不做:需要断言提交内容的用例会注入自己的假实现。
|
|
}
|
|
|
|
@override
|
|
Future<void> updateSite(String id, SubmitSiteDraft draft) async {}
|
|
|
|
@override
|
|
Future<void> deleteSite(String id) async {}
|
|
}
|