summaryrefslogtreecommitdiff
path: root/addons/snailmail/static/tests
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/snailmail/static/tests
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/snailmail/static/tests')
-rw-r--r--addons/snailmail/static/tests/helpers/mock_models.js32
-rw-r--r--addons/snailmail/static/tests/helpers/mock_server.js50
2 files changed, 82 insertions, 0 deletions
diff --git a/addons/snailmail/static/tests/helpers/mock_models.js b/addons/snailmail/static/tests/helpers/mock_models.js
new file mode 100644
index 00000000..d338504d
--- /dev/null
+++ b/addons/snailmail/static/tests/helpers/mock_models.js
@@ -0,0 +1,32 @@
+odoo.define('snailmail/static/tests/helpers/mock_models.js', function (require) {
+'use strict';
+
+const MockModels = require('mail/static/tests/helpers/mock_models.js');
+
+MockModels.patch('snailmail/static/tests/helpers/mock_models.js', T =>
+ class extends T {
+
+ //----------------------------------------------------------------------
+ // Public
+ //----------------------------------------------------------------------
+
+ /**
+ * @override
+ */
+ static generateData() {
+ const data = super.generateData(...arguments);
+ Object.assign(data, {
+ 'snailmail.letter': {
+ fields: {
+ message_id: { string: 'Snailmail Status Message', type: 'many2one', relation: 'mail.message' },
+ },
+ records: [],
+ },
+ });
+ return data;
+ }
+
+ }
+);
+
+});
diff --git a/addons/snailmail/static/tests/helpers/mock_server.js b/addons/snailmail/static/tests/helpers/mock_server.js
new file mode 100644
index 00000000..c3cc3210
--- /dev/null
+++ b/addons/snailmail/static/tests/helpers/mock_server.js
@@ -0,0 +1,50 @@
+odoo.define('snailmail/static/tests/helpers/mock_server.js', function (require) {
+"use strict";
+
+const MockServer = require('web.MockServer');
+
+MockServer.include({
+ //--------------------------------------------------------------------------
+ // Private
+ //--------------------------------------------------------------------------
+
+ /**
+ * @override
+ */
+ async _performRpc(route, args) {
+ if (args.model === 'mail.message' && args.method === 'cancel_letter') {
+ const ids = args.args[0];
+ return this._mockMailMessageCancelLetter(ids);
+ }
+ if (args.model === 'mail.message' && args.method === 'send_letter') {
+ const ids = args.args[0];
+ return this._mockMailMessageSendLetter(ids);
+ }
+ return this._super(...arguments);
+ },
+
+ //--------------------------------------------------------------------------
+ // Private Mocked Methods
+ //--------------------------------------------------------------------------
+
+ /**
+ * Simulates `cancel_letter` on `mail.message`.
+ *
+ * @private
+ * @param {integer[]} ids
+ */
+ _mockMailMessageCancelLetter(ids) {
+ // TODO implement this mock and improve related tests (task-2300496)
+ },
+ /**
+ * Simulates `send_letter` on `mail.message`.
+ *
+ * @private
+ * @param {integer[]} ids
+ */
+ _mockMailMessageSendLetter(ids) {
+ // TODO implement this mock and improve related tests (task-2300496)
+ },
+});
+
+});