summaryrefslogtreecommitdiff
path: root/addons/web/static/tests/views
diff options
context:
space:
mode:
authorMartin Geubelle <mge@odoo.com>2017-06-21 16:43:21 +0200
committerMartin Geubelle <mge@odoo.com>2017-06-22 10:52:26 +0200
commitc62a4edcb04fb1e3d65dea056123cece72425b7e (patch)
treeea8a615d6314998690c2debed6047c57222695b5 /addons/web/static/tests/views
parent3de0715f12d1a965d444f2d1cc816ca3d740a839 (diff)
[FIX] web: set 0 as default value for numeric fields
When creating a new record, the numeric field default value should be 0 in order to avoid manually setting mandatory fields to 0. This behaviour has been removed with the new views but one wants to restore it. The `mockRead` function has also been adapted in this commit because the server returns 0 for unset numeric fields.
Diffstat (limited to 'addons/web/static/tests/views')
-rw-r--r--addons/web/static/tests/views/basic_model_tests.js4
-rw-r--r--addons/web/static/tests/views/form_tests.js26
2 files changed, 16 insertions, 14 deletions
diff --git a/addons/web/static/tests/views/basic_model_tests.js b/addons/web/static/tests/views/basic_model_tests.js
index cbe04f5b43b..9fbc2acdd88 100644
--- a/addons/web/static/tests/views/basic_model_tests.js
+++ b/addons/web/static/tests/views/basic_model_tests.js
@@ -1364,8 +1364,8 @@ QUnit.module('Views', {
delete this.params.res_id;
model.load(this.params).then(function (resultID) {
var record = model.get(resultID);
- assert.strictEqual(record.data.bar, false,
- "should be initialized with correct value");
+ assert.strictEqual(record.data.bar, 0,
+ "should be initialized with correct value (0 as integer)");
model.notifyChanges(resultID, {foo: "anotherverylongstring"});
diff --git a/addons/web/static/tests/views/form_tests.js b/addons/web/static/tests/views/form_tests.js
index 9627fd1b82e..1dc2dc337ab 100644
--- a/addons/web/static/tests/views/form_tests.js
+++ b/addons/web/static/tests/views/form_tests.js
@@ -625,10 +625,10 @@ QUnit.module('Views', {
res_id: 2,
});
- assert.strictEqual(form.$('.o_field_widget.o_field_empty').length, 2,
- "should have 2 empty fields with correct class");
- assert.strictEqual(form.$('.o_form_label_empty').length, 2,
- "should have 2 muted labels (for the empty fieds) in readonly");
+ assert.strictEqual(form.$('.o_field_widget.o_field_empty').length, 1,
+ "should have 1 empty field with correct class");
+ assert.strictEqual(form.$('.o_form_label_empty').length, 1,
+ "should have 1 muted label (for the empty fied) in readonly");
form.$buttons.find('.o_form_button_edit').click();
@@ -771,7 +771,7 @@ QUnit.module('Views', {
});
QUnit.test('required float fields works as expected', function (assert) {
- assert.expect(8);
+ assert.expect(10);
this.data.partner.fields.qux.required = true;
var form = createView({
@@ -793,24 +793,26 @@ QUnit.module('Views', {
assert.ok(form.$('input[name="qux"]').hasClass('o_required_modifier'),
"qux input is flagged as required");
- assert.strictEqual(form.$('input[name="qux"]').val(), "",
- "qux input is empty");
+ assert.strictEqual(form.$('input[name="qux"]').val(), "0.0",
+ "qux input is 0 by default (float field)");
form.$buttons.find('.o_form_button_save').click();
- assert.ok(form.$('input[name="qux"]').hasClass('o_field_invalid'),
- "qux input is displayed as invalid");
+ assert.notOk(form.$('input[name="qux"]').hasClass('o_field_invalid'),
+ "qux input is not displayed as invalid");
- form.$('input[name="qux"]').val("0").trigger('input');
+ form.$buttons.find('.o_form_button_edit').click();
+
+ form.$('input[name="qux"]').val("1").trigger('input');
form.$buttons.find('.o_form_button_save').click();
form.$buttons.find('.o_form_button_edit').click();
- assert.strictEqual(form.$('input[name="qux"]').val(), "0.0",
+ assert.strictEqual(form.$('input[name="qux"]').val(), "1.0",
"qux input is properly formatted");
- assert.verifySteps(['default_get', 'create', 'read']);
+ assert.verifySteps(['default_get', 'create', 'read', 'write', 'read']);
form.destroy();
});