test(setup): guide-shot harness opens the wizard via Settings; changelog for the setup rework
Some checks failed
Security / Security check (push) Failing after 2s
Some checks failed
Security / Security check (push) Failing after 2s
Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
parent
adb8d3f914
commit
c81bc16eb9
2 changed files with 32 additions and 4 deletions
18
CHANGELOG.md
18
CHANGELOG.md
|
|
@ -5,6 +5,24 @@ version + `kStudioVersion` in `lib/main.dart` stay in lockstep.
|
|||
|
||||
## Unreleased
|
||||
|
||||
### Changed (setup lives before the app)
|
||||
|
||||
- **First-run gate.** A fresh install starts inside the setup: a
|
||||
dedicated screen hosts the wizard before the app appears (embedded
|
||||
mode + explicit "Später einrichten" skip). The Welcome page loses
|
||||
its setup button entirely; re-running the setup lives in Settings →
|
||||
General ("Run setup again…"). Wording de-ad-ified: "Einrichtung
|
||||
starten" instead of "In 3 Fragen loslegen".
|
||||
- **Preview before permission.** The plan preview now calls the new
|
||||
PlanSetup RPC over the live hub connection instead of spawning the
|
||||
chain CLI — whose first run could pop the macOS file-access prompt
|
||||
BEFORE the operator ever saw the plan. CLI remains the no-hub
|
||||
fallback; applying stays the explicit separate step.
|
||||
- **Native file dialog for flow file inputs** (with flow-editor
|
||||
v0.23.0): the Run tab's file inputs open a real picker; typing an
|
||||
absolute path is now only the no-host fallback.
|
||||
|
||||
|
||||
### Fixed (startup + build time)
|
||||
|
||||
- **Black window on launch.** A corrupt preference value (`hub.secure`
|
||||
|
|
|
|||
|
|
@ -241,17 +241,27 @@ void main() {
|
|||
// 11: the guided-setup wizard, step 1 (localized option cards).
|
||||
// 10 (inside a sealed area) still needs the manual procedure —
|
||||
// it requires switching to a second, isolated hub instance.
|
||||
// The wizard no longer lives on Welcome (first-run gate owns a
|
||||
// fresh install; re-running is a Settings action) — capture it
|
||||
// via Settings → General like an operator would reach it.
|
||||
shell.navigateTo('welcome');
|
||||
await _pumpFrames(tester);
|
||||
final cta = find.textContaining(
|
||||
_locale.languageCode == 'en' ? '3 questions' : '3 Fragen',
|
||||
await tester.sendKeyEvent(LogicalKeyboardKey.escape); // close leftovers
|
||||
await _pumpFrames(tester, 5);
|
||||
ChainSettingsDialog.show(tester.element(find.byType(StudioShell)));
|
||||
await _pumpFrames(tester);
|
||||
final runSetup = find.textContaining(
|
||||
_locale.languageCode == 'en' ? 'Run setup again' : 'Einrichtung erneut',
|
||||
);
|
||||
if (cta.evaluate().isNotEmpty) {
|
||||
await tester.tap(cta.first);
|
||||
if (runSetup.evaluate().isNotEmpty) {
|
||||
await tester.ensureVisible(runSetup.first);
|
||||
await tester.tap(runSetup.first);
|
||||
await _pumpFrames(tester);
|
||||
await _shot(tester, '11-einrichtung');
|
||||
await tester.sendKeyEvent(LogicalKeyboardKey.escape);
|
||||
await _pumpFrames(tester, 5);
|
||||
await tester.sendKeyEvent(LogicalKeyboardKey.escape); // settings too
|
||||
await _pumpFrames(tester, 5);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue