[ADD] sanity tests for basic checking of onchange parsing
bzr revid: xmo@openerp.com-20111121122622-g6jzo74ctgc6r1hk
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
$(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]);
|
||||
});
|
||||
});
|
||||
@@ -49,4 +49,5 @@
|
||||
<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>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user