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
|
odoo.define('mail.debugManagerTests', function (require) {
"use strict";
var testUtils = require('web.test_utils');
var createDebugManager = testUtils.createDebugManager;
QUnit.module('Mail DebugManager', {}, function () {
QUnit.test("Manage Messages", async function (assert) {
assert.expect(3);
var debugManager = await createDebugManager({
intercepts: {
do_action: function (event) {
assert.deepEqual(event.data.action, {
context: {
default_res_model: "testModel",
default_res_id: 5,
},
res_model: 'mail.message',
name: "Manage Messages",
views: [[false, 'list'], [false, 'form']],
type: 'ir.actions.act_window',
domain: [['res_id', '=', 5], ['model', '=', 'testModel']],
});
},
},
});
await debugManager.appendTo($('#qunit-fixture'));
// Simulate update debug manager from web client
var action = {
views: [{
displayName: "Form",
fieldsView: {
view_id: 1,
},
type: "form",
}],
};
var view = {
viewType: "form",
getSelectedIds: function () {
return [5];
},
modelName: 'testModel',
};
await testUtils.nextTick();
await debugManager.update('action', action, view);
var $messageMenu = debugManager.$('a[data-action=getMailMessages]');
assert.strictEqual($messageMenu.length, 1, "should have Manage Message menu item");
assert.strictEqual($messageMenu.text().trim(), "Manage Messages",
"should have correct menu item text");
await testUtils.dom.click(debugManager.$('> a')); // open dropdown
await testUtils.dom.click($messageMenu);
debugManager.destroy();
});
});
});
|