diff options
| author | Xavier Morel <xmo@openerp.com> | 2012-04-19 10:12:13 +0200 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2012-04-19 10:12:13 +0200 |
| commit | e7ab44929ff4aa3add8d00bab97fc3e879b9b91c (patch) | |
| tree | a600579e5c3c00c473550db8da591b6634fcbe0f /addons/web/static/test | |
| parent | 45c48d684270f9a88af668f99a1d027df57f68d3 (diff) | |
| parent | f5c37eabe94a04ca62d08f46c1cf3a084fa77f19 (diff) | |
[MERGE] from trunk
bzr revid: xmo@openerp.com-20120419081213-m3fhofkgydj6gp1m
Diffstat (limited to 'addons/web/static/test')
| -rw-r--r-- | addons/web/static/test/class.js | 4 | ||||
| -rw-r--r-- | addons/web/static/test/evals.js | 136 | ||||
| -rw-r--r-- | addons/web/static/test/form.js | 5 | ||||
| -rw-r--r-- | addons/web/static/test/formats.js | 15 | ||||
| -rw-r--r-- | addons/web/static/test/fulltest.html | 5 | ||||
| -rw-r--r-- | addons/web/static/test/list-utils.js | 32 | ||||
| -rw-r--r-- | addons/web/static/test/onchange.js | 74 | ||||
| -rw-r--r-- | addons/web/static/test/registry.js | 4 | ||||
| -rw-r--r-- | addons/web/static/test/rpc.js | 5 | ||||
| -rw-r--r-- | addons/web/static/test/test.html | 7 |
10 files changed, 190 insertions, 97 deletions
diff --git a/addons/web/static/test/class.js b/addons/web/static/test/class.js index ed977635a5f..faad4421e31 100644 --- a/addons/web/static/test/class.js +++ b/addons/web/static/test/class.js @@ -2,8 +2,8 @@ $(document).ready(function () { var openerp; module('web-class', { setup: function () { - openerp = window.openerp.init(); - window.openerp.web.core(openerp); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); } }); test('Basic class creation', function () { diff --git a/addons/web/static/test/evals.js b/addons/web/static/test/evals.js new file mode 100644 index 00000000000..290a009f46d --- /dev/null +++ b/addons/web/static/test/evals.js @@ -0,0 +1,136 @@ +$(document).ready(function () { + var openerp; + + module("eval.contexts", { + setup: function () { + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); + } + }); + test('context_sequences', function () { + // Context n should have base evaluation context + all of contexts + // 0..n-1 in its own evaluation context + var active_id = 4; + var result = openerp.connection.test_eval_contexts([ + { + "__contexts": [ + { + "department_id": false, + "lang": "en_US", + "project_id": false, + "section_id": false, + "tz": false, + "uid": 1 + }, + { "search_default_create_uid": 1 }, + {} + ], + "__eval_context": null, + "__ref": "compound_context" + }, + { + "active_id": active_id, + "active_ids": [ active_id ], + "active_model": "purchase.requisition" + }, + { + "__debug": "{'record_id' : active_id}", + "__id": "63e8e9bff8a6", + "__ref": "context" + } + ]); + + deepEqual(result, { + department_id: false, + lang: 'en_US', + project_id: false, + section_id: false, + tz: false, + uid: 1, + search_default_create_uid: 1, + active_id: active_id, + active_ids: [active_id], + active_model: 'purchase.requisition', + record_id: active_id + }); + }); + test('non-literal_eval_contexts', function () { + var result = openerp.connection.test_eval_contexts([{ + "__ref": "compound_context", + "__contexts": [ + {"__ref": "context", "__debug": "{'type':parent.type}", + "__id": "462b9dbed42f"} + ], + "__eval_context": { + "__ref": "compound_context", + "__contexts": [{ + "__ref": "compound_context", + "__contexts": [ + {"__ref": "context", "__debug": "{'type': type}", + "__id": "16a04ed5a194"} + ], + "__eval_context": { + "__ref": "compound_context", + "__contexts": [ + {"lang": "en_US", "tz": false, "uid": 1, + "journal_type": "sale", "section_id": false, + "default_type": "out_invoice", + "type": "out_invoice", "department_id": false}, + {"id": false, "journal_id": 10, + "number": false, "type": "out_invoice", + "currency_id": 1, "partner_id": 4, + "fiscal_position": false, + "date_invoice": false, "period_id": false, + "payment_term": false, "reference_type": "none", + "reference": false, "account_id": 440, + "name": false, "invoice_line": [], + "tax_line": [], "amount_untaxed": 0, + "amount_tax": 0, "reconciled": false, + "amount_total": 0, "state": "draft", + "residual": 0, "company_id": 1, + "date_due": false, "user_id": 1, + "partner_bank_id": false, "origin": false, + "move_id": false, "comment": false, + "payment_ids": [[6, false, []]], + "active_id": false, "active_ids": [], + "active_model": "account.invoice", + "parent": {}} + ], "__eval_context": null} + }, { + "id": false, + "product_id": 4, + "name": "[PC1] Basic PC", + "quantity": 1, + "uos_id": 1, + "price_unit": 100, + "account_id": 853, + "discount": 0, + "account_analytic_id": false, + "company_id": false, + "note": false, + "invoice_line_tax_id": [[6, false, [1]]], + "active_id": false, + "active_ids": [], + "active_model": "account.invoice.line", + "parent": { + "id": false, "journal_id": 10, "number": false, + "type": "out_invoice", "currency_id": 1, + "partner_id": 4, "fiscal_position": false, + "date_invoice": false, "period_id": false, + "payment_term": false, "reference_type": "none", + "reference": false, "account_id": 440, "name": false, + "tax_line": [], "amount_untaxed": 0, "amount_tax": 0, + "reconciled": false, "amount_total": 0, + "state": "draft", "residual": 0, "company_id": 1, + "date_due": false, "user_id": 1, + "partner_bank_id": false, "origin": false, + "move_id": false, "comment": false, + "payment_ids": [[6, false, []]]} + }], + "__eval_context": null + } + }]); + deepEqual(result, {type: 'out_invoice'}); + }); +}); diff --git a/addons/web/static/test/form.js b/addons/web/static/test/form.js index 8317c7bfcd2..aace926a96a 100644 --- a/addons/web/static/test/form.js +++ b/addons/web/static/test/form.js @@ -2,8 +2,9 @@ $(document).ready(function () { var openerp; module("form.widget", { setup: function () { - openerp = window.openerp.init(true); - window.openerp.web.core(openerp); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); window.openerp.web.chrome(openerp); // views loader stuff window.openerp.web.data(openerp); diff --git a/addons/web/static/test/formats.js b/addons/web/static/test/formats.js index c0d6798628d..4fe07ff0a9c 100644 --- a/addons/web/static/test/formats.js +++ b/addons/web/static/test/formats.js @@ -3,8 +3,9 @@ $(document).ready(function () { module('server-formats', { setup: function () { - openerp = window.openerp.init(); - window.openerp.web.core(openerp); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); window.openerp.web.dates(openerp); } }); @@ -40,8 +41,9 @@ $(document).ready(function () { module('web-formats', { setup: function () { - openerp = window.openerp.init(); - window.openerp.web.core(openerp); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); window.openerp.web.dates(openerp); window.openerp.web.formats(openerp); } @@ -206,8 +208,9 @@ $(document).ready(function () { }); module('custom-date-formats', { setup: function () { - openerp = window.openerp.init(); - window.openerp.web.core(openerp); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); window.openerp.web.dates(openerp); window.openerp.web.formats(openerp); } diff --git a/addons/web/static/test/fulltest.html b/addons/web/static/test/fulltest.html index f27adfa7df9..a031325966a 100644 --- a/addons/web/static/test/fulltest.html +++ b/addons/web/static/test/fulltest.html @@ -24,10 +24,11 @@ <script src="/web/static/lib/qweb/qweb2.js"></script> - <script src="/web/static/lib/py.parse/lib/py.js"></script> + <script src="/web/static/lib/py.js/lib/py.js"></script> <script src="/web/static/src/js/boot.js"></script> - <script src="/web/static/src/js/core.js"></script> + <script src="/web/static/src/js/corelib.js"></script> + <script src="/web/static/src/js/coresetup.js"></script> <script src="/web/static/src/js/dates.js"></script> <script src="/web/static/src/js/formats.js"></script> <script src="/web/static/src/js/chrome.js"></script> diff --git a/addons/web/static/test/list-utils.js b/addons/web/static/test/list-utils.js index 8cc34454cd5..7890e71c6bc 100644 --- a/addons/web/static/test/list-utils.js +++ b/addons/web/static/test/list-utils.js @@ -10,7 +10,13 @@ $(document).ready(function () { }; module('list-events', { setup: function () { - openerp = window.openerp.init(); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); + window.openerp.web.chrome(openerp); + // views loader stuff + window.openerp.web.data(openerp); + window.openerp.web.views(openerp); window.openerp.web.list(openerp); } }); @@ -90,7 +96,13 @@ $(document).ready(function () { module('list-records', { setup: function () { - openerp = window.openerp.init(); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); + window.openerp.web.chrome(openerp); + // views loader stuff + window.openerp.web.data(openerp); + window.openerp.web.views(openerp); window.openerp.web.list(openerp); } }); @@ -123,7 +135,13 @@ $(document).ready(function () { module('list-collections-degenerate', { setup: function () { - openerp = window.openerp.init(); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); + window.openerp.web.chrome(openerp); + // views loader stuff + window.openerp.web.data(openerp); + window.openerp.web.views(openerp); window.openerp.web.list(openerp); } }); @@ -245,7 +263,13 @@ $(document).ready(function () { module('list-hofs', { setup: function () { - openerp = window.openerp.init(); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); + window.openerp.web.chrome(openerp); + // views loader stuff + window.openerp.web.data(openerp); + window.openerp.web.views(openerp); window.openerp.web.list(openerp); } }); diff --git a/addons/web/static/test/onchange.js b/addons/web/static/test/onchange.js deleted file mode 100644 index 8074c755bd3..00000000000 --- a/addons/web/static/test/onchange.js +++ /dev/null @@ -1,74 +0,0 @@ -$(document).ready(function () { - var openerp, - make_form = function (default_values) { - var fields = {}; - _(default_values).each(function (value, name) { - fields[name] = value instanceof Function ? value : { - get_on_change_value: function () { return value; } - }; - }); - return _.extend(new openerp.web.FormView(null, {}), - {fields: fields}); - }; - module("form.onchange", { - setup: function () { - openerp = window.openerp.init(true); - window.openerp.web.core(openerp); - window.openerp.web.chrome(openerp); - // views loader stuff - window.openerp.web.data(openerp); - window.openerp.web.views(openerp); - window.openerp.web.list(openerp); - window.openerp.web.form(openerp); - } - }); - test('Parse args-less onchange', function () { - var f = new openerp.web.FormView(null, {}); - var result = f.parse_on_change('on_change_foo()', {}); - equal(result.method, 'on_change_foo'); - deepEqual(result.args, []); - }); - test('Parse 1-arg onchange', function () { - var f = make_form({foo: 3}); - var result = f.parse_on_change('on_change_foo(foo)', {}); - equal(result.method, 'on_change_foo'); - deepEqual(result.args, [3]); - }); - test('Parse 2-args onchange', function () { - var f = make_form({foo: 3, bar: 'qux'}); - var result = f.parse_on_change('on_change_foo(bar, foo)', {}); - equal(result.method, 'on_change_foo'); - deepEqual(result.args, ['qux', 3]); - }); - test('Literal null', function () { - var f = make_form(); - var result = f.parse_on_change('on_null(None)', {}); - deepEqual(result.args, [null]); - }); - test('Literal true', function () { - var f = make_form(); - var result = f.parse_on_change('on_null(True)', {}); - deepEqual(result.args, [true]); - }); - test('Literal false', function () { - var f = make_form(); - var result = f.parse_on_change('on_null(False)', {}); - deepEqual(result.args, [false]); - }); - test('Literal string', function () { - var f = make_form(); - var result = f.parse_on_change('on_str("foo")', {}); - deepEqual(result.args, ['foo']); - var result2 = f.parse_on_change("on_str('foo')", {}); - deepEqual(result2.args, ['foo']); - }); - test('Literal number', function () { - var f = make_form(); - var result = f.parse_on_change('on_str(42)', {}); - deepEqual(result.args, [42]); - var result2 = f.parse_on_change("on_str(-25)", {}); - deepEqual(result2.args, [-25]); - var result3 = f.parse_on_change("on_str(25.02)", {}); - deepEqual(result3.args, [25.02]); - }); -}); diff --git a/addons/web/static/test/registry.js b/addons/web/static/test/registry.js index d0a1d10385e..da0cb952783 100644 --- a/addons/web/static/test/registry.js +++ b/addons/web/static/test/registry.js @@ -2,8 +2,8 @@ $(document).ready(function () { var openerp; module('Registry', { setup: function () { - openerp = window.openerp.init(true); - window.openerp.web.core(openerp); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); openerp.web.Foo = {}; openerp.web.Bar = {}; openerp.web.Foo2 = {}; diff --git a/addons/web/static/test/rpc.js b/addons/web/static/test/rpc.js index 7dbd3239abd..8a49a48685f 100644 --- a/addons/web/static/test/rpc.js +++ b/addons/web/static/test/rpc.js @@ -3,8 +3,9 @@ $(document).ready(function () { module('Misordered resolution management', { setup: function () { - openerp = window.openerp.init(); - window.openerp.web.core(openerp); + openerp = window.openerp.init([]); + window.openerp.web.corelib(openerp); + window.openerp.web.coresetup(openerp); window.openerp.web.data(openerp); } }); diff --git a/addons/web/static/test/test.html b/addons/web/static/test/test.html index 004ba0479e1..84dd3ee7f27 100644 --- a/addons/web/static/test/test.html +++ b/addons/web/static/test/test.html @@ -24,10 +24,11 @@ <script src="/web/static/lib/qweb/qweb2.js"></script> - <script src="/web/static/lib/py.parse/lib/py.js"></script> + <script src="/web/static/lib/py.js/lib/py.js"></script> <script src="/web/static/src/js/boot.js"></script> - <script src="/web/static/src/js/core.js"></script> + <script src="/web/static/src/js/corelib.js"></script> + <script src="/web/static/src/js/coresetup.js"></script> <script src="/web/static/src/js/dates.js"></script> <script src="/web/static/src/js/formats.js"></script> <script src="/web/static/src/js/chrome.js"></script> @@ -50,6 +51,6 @@ <script type="text/javascript" src="/web/static/test/form.js"></script> <script type="text/javascript" src="/web/static/test/list-utils.js"></script> <script type="text/javascript" src="/web/static/test/formats.js"></script> - <script type="text/javascript" src="/web/static/test/onchange.js"></script> <script type="text/javascript" src="/web/static/test/rpc.js"></script> + <script type="text/javascript" src="/web/static/test/evals.js"></script> </html> |
