From b1de39faf0d9659160a50f868cd7cc126706fc42 Mon Sep 17 00:00:00 2001 From: ddm Date: Mon, 30 Dec 2013 11:27:54 +0100 Subject: [PATCH 1/5] [DEBUG] UI tests debug info on runbot bzr revid: ddm@openerp.com-20131230102754-9411hh64xy6ojoz2 --- addons/website/tests/test_ui.py | 2 +- .../website/tests/ui_suite/simple_dom_test.js | 18 +++++++++++++----- .../website/tests/ui_suite/ui_test_runner.js | 4 ++-- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/addons/website/tests/test_ui.py b/addons/website/tests/test_ui.py index 259985ebbd5..cf75a8fa51a 100644 --- a/addons/website/tests/test_ui.py +++ b/addons/website/tests/test_ui.py @@ -139,6 +139,6 @@ class WebsiteUiSuite(unittest.TestSuite): def load_tests(loader, base, _): base.addTest(WebsiteUiSuite('dummy_test.js', {})) - base.addTest(WebsiteUiSuite('simple_dom_test.js', { 'action': 'website.action_website_homepage' })) + base.addTest(WebsiteUiSuite('simple_dom_test.js', { 'action': 'website.action_website_homepage' })) base.addTest(WebsiteUiSuite('banner_tour_test.js', { 'action': 'website.action_website_homepage' })) return base diff --git a/addons/website/tests/ui_suite/simple_dom_test.js b/addons/website/tests/ui_suite/simple_dom_test.js index e0c19ceef2a..33243b0c303 100644 --- a/addons/website/tests/ui_suite/simple_dom_test.js +++ b/addons/website/tests/ui_suite/simple_dom_test.js @@ -3,13 +3,21 @@ var testRunner = require('./ui_test_runner.js'); var waitFor = testRunner.waitFor; testRunner.run(function simpleDomTest (page) { - waitFor(function () { + waitFor(function openerpFrameworkReady () { return page.evaluate(function () { - return window.openerp && window.openerp.website - && window.openerp.website.TestConsole; + return window.openerp && window.openerp.website; }); - }, function () { + }, function success () { console.log('{ "event": "success" }'); phantom.exit(); - }, 20000); + }, 20000, function errorStatus () { + var status = page.evaluate(function () { + return { + href: window.location.href, + jQueryFound: (typeof window.$ === 'function'), + openerpFound: (typeof window.openerp === 'object') + } + }); + return status.href+" with jQuery ("+status.jQueryFound+") and openerp (" +status.openerpFound+ ")"; + }); }); \ No newline at end of file diff --git a/addons/website/tests/ui_suite/ui_test_runner.js b/addons/website/tests/ui_suite/ui_test_runner.js index a781db54674..65d376f5da3 100644 --- a/addons/website/tests/ui_suite/ui_test_runner.js +++ b/addons/website/tests/ui_suite/ui_test_runner.js @@ -1,4 +1,4 @@ -function waitFor(ready, callback, timeout) { +function waitFor(ready, callback, timeout, timeoutMessageCallback) { timeout = timeout || 10000; var start = new Date().getTime(); var condition = ready(); @@ -7,7 +7,7 @@ function waitFor(ready, callback, timeout) { condition = ready(); } else { if(!condition) { - var message = "Timeout after "+timeout+" ms"; + var message = timeoutMessageCallback ? timeoutMessageCallback() : "Timeout after "+timeout+" ms"; console.log('{ "event": "error", "message": "'+message+'" }'); console.log("Waiting for...\n"+ready); phantom.exit(1); From fdb6af8805a328b48d547e189125073b8eeb8179 Mon Sep 17 00:00:00 2001 From: ddm Date: Mon, 30 Dec 2013 12:06:20 +0100 Subject: [PATCH 2/5] [FIX] Disable DB selection in UI tests bzr revid: ddm@openerp.com-20131230110620-18xf9x5dkfr4h362 --- addons/website/tests/ui_suite/ui_test_runner.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/website/tests/ui_suite/ui_test_runner.js b/addons/website/tests/ui_suite/ui_test_runner.js index 65d376f5da3..d3a49ae294a 100644 --- a/addons/website/tests/ui_suite/ui_test_runner.js +++ b/addons/website/tests/ui_suite/ui_test_runner.js @@ -27,7 +27,7 @@ function run (test) { var path = options.path ? options.path : '/web'; var params = []; if (options.action) params.push('action='+options.action); - if (options.db) params.push('source='+options.db); + //if (options.db) params.push('source='+options.db); if (options.user) params.push('login='+options.user); if (options.password) params.push('password='+options.password); var url = scheme+host+port+path+'#'+params.join('&'); From 12b5b7331257c9bf87f150286b78d48c5b899ba3 Mon Sep 17 00:00:00 2001 From: ddm Date: Mon, 30 Dec 2013 13:32:29 +0100 Subject: [PATCH 3/5] [DEBUG] More debug info for UI tests bzr revid: ddm@openerp.com-20131230123229-jf4vfkha16l4poct --- addons/website/tests/ui_suite/simple_dom_test.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/addons/website/tests/ui_suite/simple_dom_test.js b/addons/website/tests/ui_suite/simple_dom_test.js index 33243b0c303..9d96b9cfd86 100644 --- a/addons/website/tests/ui_suite/simple_dom_test.js +++ b/addons/website/tests/ui_suite/simple_dom_test.js @@ -15,9 +15,10 @@ testRunner.run(function simpleDomTest (page) { return { href: window.location.href, jQueryFound: (typeof window.$ === 'function'), - openerpFound: (typeof window.openerp === 'object') + openerpFound: (typeof window.openerp === 'object'), + websiteFound: (typeof window.openerp.website === 'object'), } }); - return status.href+" with jQuery ("+status.jQueryFound+") and openerp (" +status.openerpFound+ ")"; + return status.href+" - jQuery: "+status.jQueryFound+" - openerp: " +status.openerpFound+ " - website: "+status.websiteFound; }); }); \ No newline at end of file From b3cf02d12377f76cb18ace6b4d594f0bf76ae2e8 Mon Sep 17 00:00:00 2001 From: ddm Date: Mon, 30 Dec 2013 14:13:22 +0100 Subject: [PATCH 4/5] [FIX] More test params bzr revid: ddm@openerp.com-20131230131322-5atbn0wyfjlctgyw --- addons/website/tests/test_ui.py | 3 ++- addons/website/tests/ui_suite/ui_test_runner.js | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/addons/website/tests/test_ui.py b/addons/website/tests/test_ui.py index cf75a8fa51a..6ce69369e6b 100644 --- a/addons/website/tests/test_ui.py +++ b/addons/website/tests/test_ui.py @@ -81,7 +81,8 @@ class WebsiteUiSuite(unittest.TestSuite): self._options['db'] = tools.config.get('db_name', '') # TODO Use correct key self._options['user'] = 'admin' - self._options['password'] = tools.config.get('admin_passwd', 'admin') + self._options['admin_password'] = tools.config.get('admin_passwd', 'admin') + self._options['db_password'] = tools.config.get('db_password', 'admin') phantom = subprocess.Popen([ 'phantomjs', diff --git a/addons/website/tests/ui_suite/ui_test_runner.js b/addons/website/tests/ui_suite/ui_test_runner.js index d3a49ae294a..3391899e83f 100644 --- a/addons/website/tests/ui_suite/ui_test_runner.js +++ b/addons/website/tests/ui_suite/ui_test_runner.js @@ -25,11 +25,12 @@ function run (test) { var host = options.host ? options.host : 'localhost'; var port = options.port ? ':'+options.port : ''; var path = options.path ? options.path : '/web'; - var params = []; + var params = [ 'mod=*' ]; if (options.action) params.push('action='+options.action); - //if (options.db) params.push('source='+options.db); + if (options.db) params.push('source='+options.db); if (options.user) params.push('login='+options.user); - if (options.password) params.push('password='+options.password); + if (options.admin_password) params.push('password='+options.admin_password); + if (options.db_password) params.push('supadmin='+options.db_password); var url = scheme+host+port+path+'#'+params.join('&'); var page = require('webpage').create(); page.viewportSize = { width: 1920, height: 1080 }; From 0135ea6f8629714b46ef5a29a40e7dddf1f1b697 Mon Sep 17 00:00:00 2001 From: ddm Date: Mon, 30 Dec 2013 14:46:59 +0100 Subject: [PATCH 5/5] [FIX] Better OE url for UI tests bzr revid: ddm@openerp.com-20131230134659-2ky4zyw0q2i96g6y --- .../website/tests/ui_suite/ui_test_runner.js | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/addons/website/tests/ui_suite/ui_test_runner.js b/addons/website/tests/ui_suite/ui_test_runner.js index 3391899e83f..a4a710fc81e 100644 --- a/addons/website/tests/ui_suite/ui_test_runner.js +++ b/addons/website/tests/ui_suite/ui_test_runner.js @@ -25,13 +25,18 @@ function run (test) { var host = options.host ? options.host : 'localhost'; var port = options.port ? ':'+options.port : ''; var path = options.path ? options.path : '/web'; - var params = [ 'mod=*' ]; - if (options.action) params.push('action='+options.action); - if (options.db) params.push('source='+options.db); - if (options.user) params.push('login='+options.user); - if (options.admin_password) params.push('password='+options.admin_password); - if (options.db_password) params.push('supadmin='+options.db_password); - var url = scheme+host+port+path+'#'+params.join('&'); + + var queryParams = []; + if (options.db) queryParams.push('db='+options.db); + var query = queryParams.length > 0 ? '?'+queryParams.join('&') : ''; + + var hashParams = []; + if (options.user) hashParams.push('login='+options.user); + if (options.admin_password) hashParams.push('password='+options.admin_password); + if (options.action) hashParams.push('action='+options.action); + var hash = hashParams.length > 0 ? '#'+hashParams.join('&') : ''; + + var url = scheme+host+port+path+query+hash; var page = require('webpage').create(); page.viewportSize = { width: 1920, height: 1080 }; page.onError = function(message, trace) {