diff options
| author | Christophe Simonis <chs@odoo.com> | 2018-01-19 12:43:58 +0100 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2018-01-19 12:43:58 +0100 |
| commit | 2f95cfb8ed2a2e4dda2aee4f1f6f003587f9005c (patch) | |
| tree | b788f0bcbc56b155e35f2af195f1dd0273c8da11 /addons/board/static/tests | |
| parent | fdb585caf597b5a77d241087260ac42e3c3fb94e (diff) | |
| parent | f99c4f2b48b29f19a0d2ee1cd999008c92ab2a89 (diff) | |
[MERGE] forward port branch saas-16 up to f99c4f2b48b
Diffstat (limited to 'addons/board/static/tests')
| -rw-r--r-- | addons/board/static/tests/dashboard_tests.js | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/addons/board/static/tests/dashboard_tests.js b/addons/board/static/tests/dashboard_tests.js index 21067b32c44..ab0feaf2c96 100644 --- a/addons/board/static/tests/dashboard_tests.js +++ b/addons/board/static/tests/dashboard_tests.js @@ -402,5 +402,57 @@ QUnit.test('non-existing action in a dashboard', function (assert) { form.destroy(); }); +QUnit.test('clicking on a kanban\'s button should trigger the action', function (assert) { + assert.expect(2); + + var form = createView({ + View: FormView, + model: 'board', + data: this.data, + arch: '<form string="My Dashboard">' + + '<board style="2-1">' + + '<column>' + + '<action name="149" string="Partner" view_mode="kanban" id="action_0_1"></action>' + + '</column>' + + '</board>' + + '</form>', + archs: { + 'partner,false,kanban': + '<kanban class="o_kanban_test"><templates><t t-name="kanban-box">' + + '<div>' + + '<field name="foo"/>' + + '</div>' + + '<div><button name="sitting_on_a_park_bench" type="object">Eying little girls with bad intent</button>' + + '</div>' + + '</t></templates></kanban>', + }, + intercepts: { + execute_action: function (event) { + var data = event.data; + assert.strictEqual(data.env.model, 'partner', "should have correct model"); + assert.strictEqual(data.action_data.name, 'sitting_on_a_park_bench', + "should call correct method"); + } + }, + + mockRPC: function (route) { + if (route === '/board/static/src/img/layout_1-1-1.png') { + return $.when(); + } + if (route === '/web/action/load') { + return $.when({res_model: 'partner', view_mode: 'kanban', views: [[false, 'kanban']]}); + } + if (route === '/web/dataset/search_read') { + return $.when({records: [{foo: 'aqualung'}]}); + } + return this._super.apply(this, arguments); + } + }); + + form.$('.o_kanban_test').find('button:first').click(); + + form.destroy(); +}); + }); |
