From aa412d99ec8dcbd5f49a45c051adcd483da83e2c Mon Sep 17 00:00:00 2001 From: "chm@openerp.com" <> Date: Thu, 13 Mar 2014 15:22:58 +0100 Subject: [PATCH] [FIX] website tour: create a stub for bootstrap tour in automatic/test mode bzr revid: chm@openerp.com-20140313142258-wblpqpwp9oubboc9 --- addons/website/static/src/js/website.tour.js | 16 ++++++++++++++++ addons/website_sale/tests/test_ui.py | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/addons/website/static/src/js/website.tour.js b/addons/website/static/src/js/website.tour.js index a17115d2184..61b8f851339 100644 --- a/addons/website/static/src/js/website.tour.js +++ b/addons/website/static/src/js/website.tour.js @@ -3,9 +3,22 @@ var website = openerp.website; +// don't need template to use bootstrap Tour in automatic mode if (typeof QWeb2 !== "undefined") website.add_template_file('/website/static/src/xml/website.tour.xml'); +// don't need to use bootstrap Tour to launch an automatic tour +function bootstrap_tour_stub () { + if (typeof Tour === "undefined") { + window.Tour = function Tour() {}; + Tour.prototype.addSteps = function () {}; + Tour.prototype.end = function () {}; + Tour.prototype.goto = function () {}; + } +} + + + if (website.EditorBar) website.EditorBar.include({ tours: [], @@ -175,6 +188,9 @@ website.Tour = openerp.Class.extend({ }, registerTour: function () { + if (this.automatic) { + bootstrap_tour_stub(); + } this.tour = new Tour({ name: this.id, storage: this.tourStorage, diff --git a/addons/website_sale/tests/test_ui.py b/addons/website_sale/tests/test_ui.py index b024e405a1c..fcb84773036 100644 --- a/addons/website_sale/tests/test_ui.py +++ b/addons/website_sale/tests/test_ui.py @@ -14,7 +14,7 @@ class TestUi(openerp.tests.HttpCase): self.phantom_js("/", "openerp.website.Tour.run_test('shop')", "openerp.website.Tour.Shop", login="admin") def test_02_admin_checkout(self): - self.phantom_js("/", "openerp.website.Tour.run_test('shop_buy_product')", "openerp.website.Tour", login="admin") + self.phantom_js("/", "openerp.website.Tour.run_test('shop_buy_product')", "openerp.website.Tour", login="admin", inject=inject) def test_03_demo_checkout(self): self.phantom_js("/", "openerp.website.Tour.run_test('shop_buy_product')", "openerp.website.Tour.ShopTest", login="demo", inject=inject)