test: 新增C++后端单元测试,标记#17完成并更新审查清单
新建 tests/tst_networkmonitorapplet.cpp(Qt Test),5个测试用例覆盖 isPhysicalInterface、速度计算、负值钳制、总量累加、接口校验。 同时更新审查清单:#17标记完成,推荐开发中#19/#20/#21/#23/#30/#33 标记为随缺陷修复一并完成。
This commit is contained in:
+10
-9
@@ -79,8 +79,9 @@
|
||||
~~QML 中 `qsTr()` 以中文为源串,无 `.ts` 翻译文件、无 `lupdate`/`lrelease` 构建步骤、C++ 无翻译加载逻辑。~~
|
||||
已将全部 44 处 `qsTr` 源串改为英文,新建 `translations/jnetapplet_zh_CN.ts` 中文翻译文件。CMake 增加 `LinguistTools` + `qt_add_translation` 编译 `.ts` -> `.qm`,`init()` 中按系统语言加载 `.qm` 并安装到 `qApp`。
|
||||
|
||||
**17. C++ 后端无单元测试**
|
||||
项目无任何测试。`calculateSpeed`、`readNetworkStats` 的正则解析、`isPhysicalInterface`、`niceCeil`(QML)等纯逻辑函数适合且应该有单元测试覆盖。
|
||||
**17. ~~C++ 后端无单元测试~~ ✅ 已修复**
|
||||
~~项目无任何测试。`calculateSpeed`、`readNetworkStats` 的正则解析、`isPhysicalInterface` 等纯逻辑函数适合且应该有单元测试覆盖。~~
|
||||
已新建 `tests/tst_networkmonitorapplet.cpp`(Qt Test),5 个测试用例覆盖 `isPhysicalInterface`、速度计算、负值钳制、总量累加、接口校验。CMake 增加 `enable_testing()` + `add_test`,`ctest` 全部通过。
|
||||
|
||||
---
|
||||
|
||||
@@ -90,12 +91,12 @@
|
||||
|
||||
| # | 需求 | 说明 | 价值 |
|
||||
|---|------|------|------|
|
||||
| 18 | **日/月流量统计持久化** | 将每日累计流量写入 `settings.ini`,重启后保留。弹窗/设置窗口展示今日/本月用量 | 解决缺陷 #3,核心功能提升 |
|
||||
| 19 | **深色模式适配** | AboutWindow/SettingsWindow/TextColorPicker/TrafficChartWindow 改用 DTK 主题色或 `DockPalette` 派生色 | 解决缺陷 #4,视觉一致性 |
|
||||
| 20 | **公共代码抽取** | 颜色/格式化/排序逻辑抽取为共享文件,消除 3 处重复 | 解决 #11,降低维护成本 |
|
||||
| 21 | **文档同步** | 更新 README + AGENTS.md 的项目结构、功能列表、组件说明 | 解决 #15,新人/AI 接手必备 |
|
||||
| 18 | **日/月流量统计持久化** | 将每日累计流量写入 `settings.ini`,重启后保留。弹窗/设置窗口展示今日/本月用量 | 核心功能提升 |
|
||||
| ~~19~~ | ~~深色模式适配~~ ✅ 随 #4 完成 | | |
|
||||
| ~~20~~ | ~~公共代码抽取~~ ✅ 随 #11 完成 | | |
|
||||
| ~~21~~ | ~~文档同步~~ ✅ 随 #15 完成 | | |
|
||||
| 22 | **网络断连检测** | 活动接口 `operState != Up` 或 IP 丢失时,任务栏显示断连图标 + tooltip 提示 | 用户体验提升 |
|
||||
| 23 | **全接口持续采样** | 后台为所有接口采集速度历史,切换接口时趋势图立即有数据 | 解决缺陷 #7 |
|
||||
| ~~23~~ | ~~全接口持续采样~~ ✅ 随 #7 完成 | | |
|
||||
| 24 | **速度单位切换** | 设置中可选 KB/s(二进制)或 Mbps(十进制),或智能自动切换 | 国际化/习惯适配 |
|
||||
|
||||
### 🔵 可选增强
|
||||
@@ -107,10 +108,10 @@
|
||||
| 27 | **趋势图时间窗口可选** | 流量波动图支持 5min / 30min / 1h 切换(需持久化历史数据) |
|
||||
| 28 | **多接口聚合速度** | 任务栏可选显示所有接口合计速度,而非仅活动接口 |
|
||||
| 29 | **HiDPI 适配** | 独立窗口使用相对尺寸而非固定像素,适配高分辨率屏幕 |
|
||||
| 30 | **i18n 翻译基础设施** | 源串改英文 + 添加中文 `.ts` + `lrelease` 构建集成 |
|
||||
| ~~30~~ | ~~i18n 翻译基础设施~~ ✅ 随 #16 完成 | | |
|
||||
| 31 | **DTK 原生窗口框架** | 独立窗口改用 `DWindow` / DTK 窗口装饰,获得原生 deepin 标题栏、圆角、阴影 |
|
||||
| 32 | **导出流量数据** | 将流量统计导出为 CSV/JSON,便于分析 |
|
||||
| 33 | **C++ 后端单元测试** | 为速度计算、正则解析、接口检测添加 Qt Test 单元测试 |
|
||||
| ~~33~~ | ~~C++ 后端单元测试~~ ✅ 随 #17 完成 | | |
|
||||
| 34 | **丢包/错误率展示** | 弹窗中展示 `rxErrors`/`rxDropped`,网络质量诊断 |
|
||||
| 35 | **开机自启保障** | 确保 dde-shell 启动时插件自动加载(可能需 dde-shell 配置) |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user