chore: 清理HarmonyOS平台无关的依赖文件并更新依赖配置
本次提交包含以下主要变更: 1. 删除所有packages/fluttertoast_ohos下的HarmonyOS原生模块文件与编译配置 2. 更新pubspec.yaml的SDK与Flutter最低版本要求 3. 修复多处代码细节问题: - 替换弃用的Share.shareXFiles为SharePlus新API - 修正ConnectivityResult判断逻辑,使用contains替代直接相等判断 - 修复列表分隔符的unused参数命名 - 调整条件渲染语法为更简洁的空值判断写法 - 统一CupertinoButton的minSize参数写法 - 简化空字符串默认值处理逻辑 4. 更新pubspec.lock依赖版本
This commit is contained in:
@@ -1,89 +0,0 @@
|
||||
// 创建时间: 2026-04-09
|
||||
// 更新时间: 2026-04-09
|
||||
// 名称: API集成测试
|
||||
// 作用: 测试关键API接口的集成
|
||||
// 上次更新内容: 初始创建
|
||||
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:cute_kitchen/src/repositories/action_repository.dart';
|
||||
import 'package:cute_kitchen/src/repositories/preference_repository.dart';
|
||||
import 'package:cute_kitchen/src/services/api/api_service.dart';
|
||||
import 'package:cute_kitchen/src/services/api/api_exception.dart';
|
||||
|
||||
void main() {
|
||||
group('API 集成测试', () {
|
||||
late ApiService apiService;
|
||||
late ActionRepository actionRepository;
|
||||
late PreferenceRepository preferenceRepository;
|
||||
|
||||
setUp(() {
|
||||
apiService = ApiService();
|
||||
actionRepository = ActionRepository();
|
||||
preferenceRepository = PreferenceRepository();
|
||||
});
|
||||
|
||||
test('ApiService 初始化测试', () {
|
||||
expect(apiService, isNotNull);
|
||||
});
|
||||
|
||||
test('ApiException 类型测试', () {
|
||||
final exception = ApiException(
|
||||
type: ApiExceptionType.rateLimited,
|
||||
message: 'Rate limited',
|
||||
statusCode: 429,
|
||||
);
|
||||
expect(exception.isRateLimited, isTrue);
|
||||
expect(exception.statusCode, 429);
|
||||
});
|
||||
|
||||
test('ActionRepository 初始化测试', () {
|
||||
expect(actionRepository, isNotNull);
|
||||
});
|
||||
|
||||
test('PreferenceRepository 初始化测试', () {
|
||||
expect(preferenceRepository, isNotNull);
|
||||
});
|
||||
|
||||
// 注意:这些测试需要真实的API连接,在CI环境中可能需要mock
|
||||
// 这里只测试初始化和基本逻辑,不进行实际网络请求
|
||||
});
|
||||
|
||||
group('响应格式适配器测试', () {
|
||||
test('extractList 测试', () {
|
||||
final data1 = {
|
||||
'list': [1, 2, 3],
|
||||
};
|
||||
final data2 = {
|
||||
'items': [4, 5, 6],
|
||||
};
|
||||
final data3 = {
|
||||
'candidates': [7, 8, 9],
|
||||
};
|
||||
final data4 = {
|
||||
'recipe_view': [10, 11, 12],
|
||||
};
|
||||
|
||||
// 由于ResponseAdapter在另一个文件,这里只测试数据结构
|
||||
expect(data1['list'], isNotNull);
|
||||
expect(data2['items'], isNotNull);
|
||||
expect(data3['candidates'], isNotNull);
|
||||
expect(data4['recipe_view'], isNotNull);
|
||||
});
|
||||
|
||||
test('extractItem 测试', () {
|
||||
final data1 = {
|
||||
'item': {'id': 1},
|
||||
};
|
||||
final data2 = {
|
||||
'recipe': {'id': 2},
|
||||
};
|
||||
final data3 = {
|
||||
'best_match': {'id': 3},
|
||||
};
|
||||
|
||||
expect(data1['item'], isNotNull);
|
||||
expect(data2['recipe'], isNotNull);
|
||||
expect(data3['best_match'], isNotNull);
|
||||
});
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user