1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
odoo.define('web.upgrade_fields_tests', function (require) {
"use strict";
var FormView = require('web.FormView');
var testUtils = require('web.test_utils');
var createView = testUtils.createView;
QUnit.module('fields', {}, function () {
QUnit.module('upgrade_fields', {
beforeEach: function () {
this.data = {
partner: {
fields: {
bar: {string: "Bar", type: "boolean"},
},
}
};
},
}, function () {
QUnit.module('UpgradeBoolean');
QUnit.test('widget upgrade_boolean in a form view', async function (assert) {
assert.expect(1);
var form = await createView({
View: FormView,
model: 'partner',
data: this.data,
arch: '<form><field name="bar" widget="upgrade_boolean"/></form>',
});
await testUtils.dom.click(form.$('input:checkbox'));
assert.strictEqual($('.modal').length, 1,
"the 'Upgrade to Enterprise' dialog should be opened");
form.destroy();
});
QUnit.test('widget upgrade_boolean in a form view', async function (assert) {
assert.expect(3);
var form = await createView({
View: FormView,
model: 'partner',
data: this.data,
arch: '<form>' +
'<div class="o_field"><field name="bar" widget="upgrade_boolean"/></div>' +
'<div class="o_label"><label for="bar"/><div>Coucou</div></div>' +
'</form>',
});
assert.containsNone(form, '.o_field .badge',
"the upgrade badge shouldn't be inside the field section");
assert.containsOnce(form, '.o_label .badge',
"the upgrade badge should be inside the label section");
assert.strictEqual(form.$('.o_label').text(), "Bar EnterpriseCoucou",
"the upgrade label should be inside the label section");
form.destroy();
});
});
});
});
|