diff --git a/addons/web/static/src/js/views/sample_server.js b/addons/web/static/src/js/views/sample_server.js index 7d4cf4f26ff..cebd4a2039e 100644 --- a/addons/web/static/src/js/views/sample_server.js +++ b/addons/web/static/src/js/views/sample_server.js @@ -250,6 +250,9 @@ if (field.relation === 'res.currency') { return session.company_currency_id; } + if (field.relation === 'ir.attachment') { + return false; + } return this._getRandomSubRecordId(); case "one2many": case "many2many": { diff --git a/addons/web/static/tests/views/sample_server_tests.js b/addons/web/static/tests/views/sample_server_tests.js index 0f1dd45f795..35e33e6366d 100644 --- a/addons/web/static/tests/views/sample_server_tests.js +++ b/addons/web/static/tests/views/sample_server_tests.js @@ -54,6 +54,7 @@ odoo.define('web.sample_server_tests', function (require) { salary: { string: "Salary", type: 'monetary' }, currency: { string: "Currency", type: 'many2one', relation: 'res.currency' }, manager_id: { string: "Manager", type: 'many2one', relation: 'res.users' }, + cover_image_id: { string: "Cover Image", type: 'many2one', relation: 'ir.attachment' }, managed_ids: { string: "Managing", type: 'one2many', relation: 'res.users' }, tag_ids: { string: "Tags", type: 'many2many', relation: 'tag' }, type: { string: "Type", type: 'selection', selection: [ @@ -70,6 +71,9 @@ odoo.define('web.sample_server_tests', function (require) { ] }, age: { string: "Age", type: 'integer' }, }, + 'ir.attachment': { + display_name: { string: "Name", type: 'char' }, + } }; }, }, function () { @@ -77,7 +81,7 @@ odoo.define('web.sample_server_tests', function (require) { QUnit.module("Basic behaviour"); QUnit.test("Sample data: people type + all field names", async function (assert) { - assert.expect(25); + assert.expect(26); mock.patch(session, { company_currency_id: 4, @@ -150,6 +154,8 @@ odoo.define('web.sample_server_tests', function (require) { assert.strictEqual(typeof rec.manager_id[0], 'number'); assert.ok(SAMPLE_PEOPLE.includes(rec.manager_id[1])); + assert.strictEqual(rec.cover_image_id, false); + assert.strictEqual(rec.managed_ids.length, 2); assert.ok(rec.managed_ids.every( (id) => typeof id === 'number')