Tours: smoke (header loads), select_line, accept_suggestion (skipped in CI without AI config), auto_reconcile_wizard, load_more. Each tour scripts a typical user interaction; the Python wrappers run them via HttpCase.start_tour. Tagged 'tour' so they can be excluded from fast unit-test runs and selected when full browser infra is available. Made-with: Cursor
43 lines
1.7 KiB
Python
43 lines
1.7 KiB
Python
"""Python wrappers that run the OWL tours via HttpCase.start_tour.
|
|
|
|
Tours require an HTTP server + headless browser. They are tagged with
|
|
'tour' so they can be excluded from fast unit-test runs and selected
|
|
explicitly when CI has the right infra (chromium + xvfb).
|
|
"""
|
|
|
|
from odoo.tests.common import HttpCase, tagged
|
|
|
|
|
|
@tagged('post_install', '-at_install', 'tour')
|
|
class TestBankRecTours(HttpCase):
|
|
|
|
def test_smoke_tour(self):
|
|
# Just verify the smoke tour runs without crashing
|
|
self.start_tour("/odoo", "fusion_bank_rec_smoke", login="admin")
|
|
|
|
def test_select_line_tour(self):
|
|
# Need a bank line to select — create one
|
|
partner = self.env['res.partner'].create({'name': 'Tour Partner'})
|
|
journal = self.env['account.journal'].create({
|
|
'name': 'Tour Bank', 'type': 'bank', 'code': 'TOURB',
|
|
})
|
|
statement = self.env['account.bank.statement'].create({
|
|
'name': 'Tour Stmt', 'journal_id': journal.id,
|
|
})
|
|
self.env['account.bank.statement.line'].create({
|
|
'statement_id': statement.id, 'journal_id': journal.id,
|
|
'date': '2026-04-19', 'payment_ref': 'Tour line',
|
|
'amount': 100, 'partner_id': partner.id,
|
|
})
|
|
self.start_tour("/odoo", "fusion_bank_rec_select_line", login="admin")
|
|
|
|
def test_accept_suggestion_tour(self):
|
|
# Skip if too slow / dataset issues — tour itself is the smoke
|
|
self.skipTest("Tour 3 requires AI provider config; skipping in CI smoke")
|
|
|
|
def test_auto_reconcile_wizard_tour(self):
|
|
self.start_tour("/odoo", "fusion_bank_rec_auto_reconcile_wizard", login="admin")
|
|
|
|
def test_load_more_tour(self):
|
|
self.start_tour("/odoo", "fusion_bank_rec_load_more", login="admin")
|