Name:
[IMP] viin_brain,viin_web_editor: UI hardening v1 (token + polish + Odoo-native + v2 seams)
State:
Killed
finished in 309m
PR State:
merged
PR Author:
David Tran
PR Author Email:
PR:
#27
Committer:
David Tran
Committer Email:
davidtran.hp@gmail.com
Commit:
e63d41263cd2083255ee3f7ada008eb065563625
Description:
[IMP] viin_brain: extend TourCaseBase with _ensure_contracts_database (round 4 follow-up)
Address Gap 2 from CEO intent review: 7 tour JS files hardcode
:contains("Contracts Database") + :contains("Contract Alpha") selectors,
making those tours fail with --without-demo=all even after Phase B switch
to TourCaseBase.
Per CEO directive (Boil-the-Lake max): seed the demo_db_page_contracts
fixture inside cls._tour_vault so tours pass deterministically regardless
of demo data state.
_ensure_contracts_database() seeds (idempotent — prefer demo, fallback
search, finally create):
- Contracts Database page (page_type=database, icon 🗂️)
- Status property (select with Draft/Review/Signed options)
- Effective Date property (date)
- Contract Alpha + Contract Beta child pages (Gamma omitted — tours
reference only Alpha; Beta provides second row for List/Kanban)
- Property values for Alpha (Status=Review, Date=2025-01-15)
- Default database view (kind=list, is_default=True)
Sets cls._contracts_db_page + cls._contract_alpha_page for subclasses.
Tours now pass with both --without-demo=all and demo loaded:
brain_database_view, brain_database_calendar_tour,
brain_database_gallery_tour, brain_database_board_tour,
brain_properties, brain_wikilink (line 97 Contracts Database step)
WI14 cluster (graph_panel tour) already covered by
test_brain_graph_panel_tour.py's own setUpClass — no fixture extension
needed.
Refs PR #27.
Branch:
17.0
Instance ID:
0
Age:
Up-time: