From 19eef5d658d46719665635e28883be755f395813 Mon Sep 17 00:00:00 2001 From: Christophe Matthieu Date: Thu, 20 Apr 2017 12:16:51 +0200 Subject: [FIX] web: allow virtual ids for integer fields Before this change, the redering throw an exception when we try to open a form view with a virtual id. eg: recurrent event in calendar --- .../web/static/tests/fields/basic_fields_tests.js | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'addons/web/static/tests/fields/basic_fields_tests.js') diff --git a/addons/web/static/tests/fields/basic_fields_tests.js b/addons/web/static/tests/fields/basic_fields_tests.js index cd0380d0949..9f2ff12c9e2 100644 --- a/addons/web/static/tests/fields/basic_fields_tests.js +++ b/addons/web/static/tests/fields/basic_fields_tests.js @@ -1521,6 +1521,31 @@ QUnit.module('basic_fields', { form.destroy(); }); + QUnit.test('integer field in form view with virtual id', function(assert) { + assert.expect(2); + var params = { + View: FormView, + model: 'partner', + data: this.data, + arch:'
', + }; + + params.res_id = this.data.partner.records[1].id = "2-20170808020000"; + var form = createView(params); + assert.strictEqual(form.$('.o_form_field').text(), "2-20170808020000", + "Should display virtual id"); + form.destroy(); + + params.res_id = this.data.partner.records[1].id = "2.65-20170808020000"; + try { + form = createView(params); + } catch (error) { + assert.strictEqual(error.message, '"2.65-20170808020000" is not an integer or a virtual id', + "Should throw an exception because it's a wrong value"); + } + form.destroy(); + }); + QUnit.test('integer field in editable list view', function (assert) { assert.expect(4); -- cgit v1.2.3