test(viewer): the found book's expected path drops Windows' extended-length prefix
check / check (push) Canceled after 0s
portable-macos / portable (macos-latest) (push) Canceled after 0s
portable-windows / portable (windows-latest) (push) Canceled after 0s
two-user / two-user (push) Canceled after 0s

P11c run 15: Windows reached the viewer's tests; the expectation came
from `canonicalize`, which spells `\\?\C:\...` there, while the books
never keep that prefix.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HS8WZziDnyxunC23MUxrLp
This commit is contained in:
swaitsandClaude Fable 5.1 committed 2026-10-30 17:26:22 -06:00
1 parent 1b3b6a736d
commit 7809ff818a
1 file changed
+9 -3
+9 -3
View File
@@ -387,10 +387,16 @@ fn the_viewer_finds_its_book_in_the_root() {
.unwrap();
}
// As the system spells it: `book_in_root` answers a canonical path
// (macOS writes /tmp as /private/tmp).
// (macOS writes /tmp as /private/tmp), with no Windows `\\?\` prefix
// (the books never keep one).
let dir = |id: &str| {
std::fs::canonicalize(root.book_dir(&ledger_store::root::BookId::parse(id).unwrap()))
.unwrap()
let p =
std::fs::canonicalize(root.book_dir(&ledger_store::root::BookId::parse(id).unwrap()))
.unwrap();
match p.to_str().and_then(|s| s.strip_prefix(r"\\?\")) {
Some(plain) if cfg!(windows) => std::path::PathBuf::from(plain),
_ => p,
}
};
assert_eq!(
ledger_gui::book_in_root(Some(&r), Some("zeta")).unwrap(),