diff options
| author | Christophe Matthieu <chm@odoo.com> | 2018-03-29 17:46:24 +0200 |
|---|---|---|
| committer | Géry Debongnie <ged@odoo.com> | 2018-04-19 17:17:54 +0200 |
| commit | 07cd24b1ecf3ab8edd3fffbf2fcd3a3e685f357c (patch) | |
| tree | 3fc6a94ed00c2501e83a102f07438ea87097fca8 /addons/web/static/tests/views/form_tests.js | |
| parent | 67a7d1f2b5ec1cdc2fa6677a359fc6cf10f02b85 (diff) | |
[IMP] web: convert notification popup in service and add buttons params
this.call('web.Notification', 'notify', params)
Display a notification at the appropriate location, and returns the
reference id to the same widget. Note that this method does not wait
for the appendTo method to complete.
@param {Object} params
@param {string} params.title notification title
@param {string} params.message notification main message
@param {string} params.type 'notification' or 'warning'
@param {boolean} [params.sticky=false] if true, the notification will stay
visible until the user clicks on it.
@param {string} [params.className] className to add on the dom
@param {function} [params.onClose] callback when the user click on the x
or when the notification is auto close (no sticky)
@param {Array<Object>} params.buttons
@param {function} params.buttons[0].click callback on click
@param {Boolean} [params.buttons[0].primary] display the button as primary
@param {string} [params.buttons[0].text] button label
@param {string} [params.buttons[0].icon] font-awsome className or image src
@returns {Number} notification id
this.call('web.Notification', 'close', notificationId)
Diffstat (limited to 'addons/web/static/tests/views/form_tests.js')
| -rw-r--r-- | addons/web/static/tests/views/form_tests.js | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/addons/web/static/tests/views/form_tests.js b/addons/web/static/tests/views/form_tests.js index 534fa4fbea9..76c97b10d70 100644 --- a/addons/web/static/tests/views/form_tests.js +++ b/addons/web/static/tests/views/form_tests.js @@ -8,6 +8,7 @@ var core = require('web.core'); var fieldRegistry = require('web.field_registry'); var FormView = require('web.FormView'); var mixins = require('web.mixins'); +var NotificationService = require('web.NotificationService'); var pyeval = require('web.pyeval'); var testUtils = require('web.test_utils'); var widgetRegistry = require('web.widget_registry'); @@ -2669,13 +2670,17 @@ QUnit.module('Views', { arch: '<form string="Partners">' + '<group><field name="foo"/></group>' + '</form>', - }); - - testUtils.intercept(form, 'warning', function (event) { - assert.strictEqual(event.data.title, 'The following fields are invalid:', - "should have a warning with correct title"); - assert.strictEqual(event.data.message, '<ul><li>Foo</li></ul>', - "should have a warning with correct message"); + services: [NotificationService.extend({ + notify: function (params) { + if (params.type !== 'warning') { + return; + } + assert.strictEqual(params.title, 'The following fields are invalid:', + "should have a warning with correct title"); + assert.strictEqual(params.message, '<ul><li>Foo</li></ul>', + "should have a warning with correct message"); + } + })], }); form.$buttons.find('.o_form_button_save').click(); @@ -4713,11 +4718,11 @@ QUnit.module('Views', { } return result; }, - intercepts: { - warning: function () { - assert.step('warning'); - }, - }, + services: [NotificationService.extend({ + notify: function (params) { + assert.step(params.type); + } + })], }); form.$buttons.find('.o_form_button_edit').click(); |
