diff --git a/addons/website/data/website_data.xml b/addons/website/data/website_data.xml index 9e33a43b5d2..bc387b609ae 100644 --- a/addons/website/data/website_data.xml +++ b/addons/website/data/website_data.xml @@ -75,6 +75,11 @@ /?tutorial.banner=true self + + Website Homepage + /page/website.homepage + self + Website diff --git a/addons/website/tests/test_ui.py b/addons/website/tests/test_ui.py index edf9a352459..e6d548137d1 100644 --- a/addons/website/tests/test_ui.py +++ b/addons/website/tests/test_ui.py @@ -43,7 +43,7 @@ class WebsiteUiTest(unittest.TestCase): class WebsiteUiSuite(unittest.TestSuite): # timeout is in seconds - def __init__(self, testfile, timeout=10.0): + def __init__(self, testfile, timeout=60.0): self.testfile = testfile self.timeout = timeout self._test = None diff --git a/addons/website/tests/ui_suite/dom_test.js b/addons/website/tests/ui_suite/banner_tour_test.js similarity index 52% rename from addons/website/tests/ui_suite/dom_test.js rename to addons/website/tests/ui_suite/banner_tour_test.js index 23366312ca2..5b9a6364b99 100644 --- a/addons/website/tests/ui_suite/dom_test.js +++ b/addons/website/tests/ui_suite/banner_tour_test.js @@ -1,5 +1,5 @@ var options = JSON.parse(phantom.args); -var url = 'http://localhost:'+options.port+'/web#action=website.action_website&login=admin&password=admin'; +var url = 'http://localhost:'+options.port+'/web#action=website.action_website_homepage&login=admin&password=admin'; var page = require('webpage').create(); @@ -9,7 +9,7 @@ page.onError = function(message, trace) { }; function waitFor(ready, callback, timeout) { - var timeoutMillis = timeout ? Math.round(timeout*1000) : 10000; + var timeoutMillis = timeout ? Math.round(timeout*1000) : 30000; var start = new Date().getTime(); var condition = ready(); var interval = setInterval(function() { @@ -17,7 +17,7 @@ function waitFor(ready, callback, timeout) { condition = ready(); } else { if(!condition) { - console.log('{ "event": "error", "message": "Timeout after'+timeoutMillis+' ms" }'); + console.log('{ "event": "error", "message": "Timeout after '+timeoutMillis+' ms" }'); phantom.exit(1); } else { clearInterval(interval); @@ -33,13 +33,30 @@ page.open(url, function (status) { console.log('{ "event": "failure", "message": "'+url+' failed to load"}'); phantom.exit(1); } else { + page.evaluate(function () { + localStorage.clear(); + }); waitFor(function () { return page.evaluate(function () { - return window.openerp && window.openerp.website && window.openerp.website.TestConsole; + return window.openerp && window.openerp.website && window.openerp.website.TestConsole && window.openerp.website.TestConsole.test('banner'); }); }, function () { - console.log('{ "event": "success" }'); - phantom.exit(); - }, options.timeout); + page.evaluate(function () { + window.openerp.website.TestConsole.test('banner').run(true); + }); + waitFor(function () { + return page.evaluate(function () { + var $edit = $('button[data-action=edit]'); + var $carousel = $('#wrap [data-snippet-id=carousel]'); + var $columns = $('#wrap [data-snippet-id=three-columns]'); + return $carousel && $carousel.length === 1 + && $columns && $columns.length === 1 + && $('button[data-action=edit]').is(":visible"); + }); + }, function () { + console.log('{ "event": "success" }'); + phantom.exit(); + }); + }); } }); \ No newline at end of file