58 lines
2.2 KiB
Markdown
58 lines
2.2 KiB
Markdown
---
|
|
status: complete
|
|
phase: 01-safety-foundation
|
|
source: [01-01-SUMMARY.md, 01-02-SUMMARY.md, 01-03-SUMMARY.md]
|
|
started: 2026-02-28T21:25:00Z
|
|
updated: 2026-02-28T21:35:00Z
|
|
---
|
|
|
|
## Current Test
|
|
|
|
[testing complete]
|
|
|
|
## Tests
|
|
|
|
### 1. App launches with placeholder TUI
|
|
expected: Running `cargo run` displays a TUI with a "BBS-MD" title in the top border and a welcome message. The terminal enters full-screen raw mode on the main screen buffer.
|
|
result: pass
|
|
|
|
### 2. Press 'q' to exit with goodbye message
|
|
expected: While the TUI is running, pressing 'q' exits the app and displays a BBS-style goodbye box with "CARRIER LOST" text that shows briefly (~500ms) before returning to the shell prompt.
|
|
result: pass
|
|
|
|
### 3. Single Ctrl+C shows quit prompt
|
|
expected: Pressing Ctrl+C once shows a yellow "Press Ctrl+C again to disconnect..." prompt in the TUI. The app does NOT exit yet.
|
|
result: pass
|
|
|
|
### 4. Double Ctrl+C exits
|
|
expected: Pressing Ctrl+C twice within 2 seconds exits the app with the same BBS "CARRIER LOST" goodbye message.
|
|
result: pass
|
|
|
|
### 5. Quit prompt clears on other key
|
|
expected: After pressing Ctrl+C once (seeing the quit prompt), pressing any other key (e.g., a letter or arrow key) dismisses the yellow quit prompt. The app continues running normally.
|
|
result: pass
|
|
|
|
### 6. Invalid config produces BBS-themed error
|
|
expected: Creating a `bbs.toml` (next to the binary in `target/debug/`) with an unknown key like `bogus = true` causes the app to print a "SYSTEM ERROR" message mentioning "SysOp" to stderr and exit with code 1 — without entering the TUI.
|
|
result: pass
|
|
|
|
### 7. SIGTERM clean exit
|
|
expected: While the TUI is running, sending SIGTERM from another terminal (`kill $(pgrep bbs-md)`) causes the app to exit cleanly — no goodbye message, but the terminal is restored to a usable state (cursor visible, typing works normally).
|
|
result: pass
|
|
|
|
### 8. Terminal restored after exit
|
|
expected: After exiting by any method (q, Ctrl+C, SIGTERM), the terminal is fully usable — cursor is visible, text input works, no garbled characters or stuck raw mode.
|
|
result: pass (fixed)
|
|
|
|
## Summary
|
|
|
|
total: 8
|
|
passed: 8
|
|
issues: 0
|
|
pending: 0
|
|
skipped: 0
|
|
|
|
## Gaps
|
|
|
|
[none — issue fixed inline: switched to alternate screen buffer (b81b893)]
|