diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 21:51:50 +0700 |
| commit | 3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch) | |
| tree | a44932296ef4a9b71d5f010906253d8c53727726 /addons/link_tracker/tests/test_mail_render_mixin.py | |
| parent | 0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff) | |
initial commit 2
Diffstat (limited to 'addons/link_tracker/tests/test_mail_render_mixin.py')
| -rw-r--r-- | addons/link_tracker/tests/test_mail_render_mixin.py | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/addons/link_tracker/tests/test_mail_render_mixin.py b/addons/link_tracker/tests/test_mail_render_mixin.py new file mode 100644 index 00000000..23a74b5a --- /dev/null +++ b/addons/link_tracker/tests/test_mail_render_mixin.py @@ -0,0 +1,52 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo.tests import common + + +class TestMailRenderMixin(common.TransactionCase): + def test_shorten_links(self): + test_links = [ + '<a href="https://gitlab.com" title="title" fake="fake">test_label</a>', + '<a href="https://test_542152qsdqsd.com"/>', + """<a href="https://third_test_54212.com"> + <img src="imagesrc"/> + </a> + """, + """<a + href="https://test_strange_html.com" title="title" + fake='fake' + > test_strange_html_label + </a> + """, + '<a href="https://test_escaped.com" title="title" fake="fake"> test_escaped < > </a>', + '<a href="https://url_with_params.com?a=b&c=d">label</a>', + ] + + self.env["mail.render.mixin"]._shorten_links("".join(test_links), {}) + + trackers_to_find = [ + [("url", "=", "https://gitlab.com"), ("label", "=", "test_label")], + [("url", "=", "https://test_542152qsdqsd.com")], + [ + ("url", "=", "https://test_strange_html.com"), + ("label", "=", "test_strange_html_label"), + ], + [ + ("url", "=", "https://test_escaped.com"), + ("label", "=", "test_escaped < >"), + ], + [ + ("url", "=", "https://url_with_params.com?a=b&c=d"), + ("label", "=", "label"), + ], + ] + trackers_to_fail = [ + [("url", "=", "https://test_542152qsdqsd.com"), ("label", "ilike", "_")] + ] + + for tracker_to_find in trackers_to_find: + self.assertTrue(self.env["link.tracker"].search(tracker_to_find)) + + for tracker_to_fail in trackers_to_fail: + self.assertFalse(self.env["link.tracker"].search(tracker_to_fail)) |
