diff options
| author | Christophe Simonis <chs@odoo.com> | 2019-02-11 17:00:35 +0100 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2019-02-11 17:00:35 +0100 |
| commit | 8c29df10e02e6777840ffd7a318472de29f77dd1 (patch) | |
| tree | 49c08eeab2620aa7e91e87256754763400c93376 /addons/web/static/tests/fields | |
| parent | 0e71f91fa1ea8df0111d034069dcb92e27c5f0a3 (diff) | |
| parent | 93d736e905e0d3b110c36ee93af341021eba42c4 (diff) | |
[MERGE] forward port branch saas-12.1 up to 93d736e905e
Diffstat (limited to 'addons/web/static/tests/fields')
| -rw-r--r-- | addons/web/static/tests/fields/relational_fields_tests.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/addons/web/static/tests/fields/relational_fields_tests.js b/addons/web/static/tests/fields/relational_fields_tests.js index 463effad124..faf3df6f2e8 100644 --- a/addons/web/static/tests/fields/relational_fields_tests.js +++ b/addons/web/static/tests/fields/relational_fields_tests.js @@ -205,6 +205,42 @@ QUnit.module('relational_fields', { form.destroy(); }); + QUnit.test('do not call name_get if display_name already known', function (assert) { + // default_get only returns the id for many2one fields + // onchange returns an array with the id and the display_name + // thus, when an onchange is performed, there is no need to call + // name_get as the display_name is alreay available + assert.expect(6); + + this.data.partner.fields.product_id.default = 37; + this.data.partner.onchanges = { + trululu: function (obj) { + obj.trululu = [1, 'first record']; + }, + }; + + var form = createView({ + View: FormView, + model: 'partner', + data: this.data, + arch: '<form><field name="trululu"/><field name="product_id"/></form>', + mockRPC: function (route, args) { + assert.step(args.method + ' on ' + args.model); + return this._super.apply(this, arguments); + }, + }); + + assert.strictEqual(form.$('.o_field_widget[name=trululu] input').val(), 'first record'); + assert.strictEqual(form.$('.o_field_widget[name=product_id] input').val(), 'xphone'); + assert.verifySteps([ + 'default_get on partner', + 'onchange on partner', + 'name_get on product', + ]); + + form.destroy(); + }); + QUnit.test('x2many default_order multiple fields', function (assert) { assert.expect(7); |
