[FIX] deferred.pipe -> deferred.then
[odoo/odoo.git] / addons / web / static / test / form.js
1 openerp.testing.section('compute_domain', {
2     dependencies: ['web.form']
3 }, function (test) {
4     test("basic", function (instance) {
5         var fields = {
6             'a': {value: 3},
7             'group_method': {value: 'line'},
8             'select1': {value: 'day'},
9             'rrule_type': {value: 'monthly'}
10         };
11         ok(instance.web.form.compute_domain(
12             [['a', '=', 3]], fields));
13         ok(instance.web.form.compute_domain(
14             [['group_method','!=','count']], fields));
15         ok(instance.web.form.compute_domain(
16             [['select1','=','day'], ['rrule_type','=','monthly']], fields));
17     });
18     test("or", function (instance) {
19         var web = {
20             'section_id': {value: null},
21             'user_id': {value: null},
22             'member_ids': {value: null}
23         };
24
25         var domain = ['|', ['section_id', '=', 42],
26                       '|', ['user_id','=',3],
27                            ['member_ids', 'in', [3]]];
28
29         ok(instance.web.form.compute_domain(domain, _.extend(
30             {}, web, {'section_id': {value: 42}})));
31         ok(instance.web.form.compute_domain(domain, _.extend(
32             {}, web, {'user_id': {value: 3}})));
33
34         ok(instance.web.form.compute_domain(domain, _.extend(
35             {}, web, {'member_ids': {value: 3}})));
36     });
37     test("not", function (instance) {
38         var fields = {
39             'a': {value: 5},
40             'group_method': {value: 'line'}
41         };
42         ok(instance.web.form.compute_domain(
43             ['!', ['a', '=', 3]], fields));
44         ok(instance.web.form.compute_domain(
45             ['!', ['group_method','=','count']], fields));
46     });
47 });