[Polish] Define an injectable connectivity stream
还没有人认领这个 Issue。
评估
调研方向
Start with lib/screens/sign_in_screen.dart and inspect how the sign-in button and screen state are built; then review pubspec.yaml and the Flutter test setup. Add the monitor in lib/connectivity/connectivity_monitor.dart and cover its injected stream in test/offline_banner_test.dart. Done means offline shows the banner and disables Sign In, online removes both effects, and the Flutter checks pass.
由索引模型根据 Issue 内容生成。
描述
What to build
Define the small connection-status interface that the app’s offline banner will use. Tests should be able to send online/offline changes without relying on the phone’s real network.
Files
lib/connectivity/connectivity_monitor.dart(new file)- Starting example: lib/app.dart
Code to add or extend:abstract interface class ConnectivityMonitor { Stream<bool> get online; Future<void> dispose(); }.
Steps
- Add
ConnectivityMonitorwith Stream online and Future dispose(). true means the device has a network connection; it does not guarantee the internet is reachable. - In tests, add
FakeConnectivityMonitorusing StreamController.broadcast(), an online getter and emit(bool). Close the controller in dispose. - Check that emit(false) then emit(true) delivers those values. This issue defines the connection source; the next one adds the real library.
Example
emit(false),emit(true) produces those two events; disposing closes the stream.
Check it works
In test/connectivity/connectivity_monitor_5_test.dart, check the example above and the failure or limit described in the steps. Run flutter test test/connectivity/connectivity_monitor_5_test.dart and flutter analyze.
References
Assign yourself before starting, or comment to claim the issue. Project setup.
- 主要语言
- PLpgSQL
- 星标
- 0
- 派生
- 0
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
DevDogsUGA/DogPack 的其他 Issue
-
polish
难度 2/5 1-3 小时 新手友好度 72/100
DevDogsUGA/DogPack#131 ·
-
polish
难度 2/5 1-3 小时 新手友好度 65/100
DevDogsUGA/DogPack#130 ·
-
moderation
难度 2/5 1-3 小时 新手友好度 75/100
DevDogsUGA/DogPack#119 ·
-
moderation
难度 2/5 1-3 小时 新手友好度 85/100
DevDogsUGA/DogPack#113 ·
-
discover
难度 2/5 1-3 小时 新手友好度 74/100
DevDogsUGA/DogPack#106 ·
查看 DevDogsUGA/DogPack 的全部 Issue
相似的 Issue
-
[BUG] Navigation drawer drops library-name suffixes without ellipsis (1.0.8, NVIDIA Shield)可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 2/5 1-3 小时 新手友好度 62/100
damontecres/Wholphin#2069 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 80/100
rajput-hemant/calculator#199 ·
-
Android (vision-camera-location): HybridLocationManager never quits its HandlerThread on dispose未关闭
难度 2/5 1-3 小时 新手友好度 74/100
margelo/react-native-vision-camera#4217 ·
维护者通常 4 天内回复
-
难度 2/5 1-3 小时 新手友好度 65/100
saisaharsh3/Leftovers#13 · 1 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 62/100
leancodepl/app-rating#35 ·