summaryrefslogtreecommitdiff
path: root/addons/web/static
diff options
context:
space:
mode:
authorqsm-odoo <qsm@odoo.com>2017-03-10 12:28:19 +0100
committerAaron Bohy <aab@odoo.com>2017-04-11 19:44:38 +0200
commita52690c26cafea207c33fa7c5378cda1c45523f2 (patch)
tree43690d5c3c90099854a7aaa5c8613937c8dd1467 /addons/web/static
parentc24d1f615ca549ff134fbd250afafc359a591431 (diff)
[FIX] web: mock server was replacing "falsy" values with default ones
When setting a field value to "0", the mock server was replacing it with the field default value as "0" is a falsy value. Now it only adds the default values where there is no value at all, as expected.
Diffstat (limited to 'addons/web/static')
-rw-r--r--addons/web/static/test/helpers/mock_server.js8
1 files changed, 5 insertions, 3 deletions
diff --git a/addons/web/static/test/helpers/mock_server.js b/addons/web/static/test/helpers/mock_server.js
index 27d202cdb5a..cb1d8cdedb2 100644
--- a/addons/web/static/test/helpers/mock_server.js
+++ b/addons/web/static/test/helpers/mock_server.js
@@ -17,7 +17,6 @@ var MockServer = Class.extend({
*/
init: function (data, options) {
this.data = data;
-
for (var modelName in this.data) {
var model = this.data[modelName];
if (!('id' in model.fields)) {
@@ -129,8 +128,11 @@ var MockServer = Class.extend({
if (fieldName === 'id') {
continue;
}
- if (model.fields[fieldName].type !== 'boolean' || record[fieldName] !== false) {
- record[fieldName] = record[fieldName] || model.fields[fieldName].default;
+ if (!(fieldName in record)) {
+ record[fieldName] = model.fields[fieldName].default;
+ if (model.fields[fieldName].type === 'boolean') {
+ record[fieldName] = record[fieldName] || false;
+ }
}
}
},