mirror of
https://github.com/bringout/oca-ocb-core.git
synced 2026-04-20 10:52:02 +02:00
19.0 vanilla
This commit is contained in:
parent
d1963a3c3a
commit
2d3ee4855a
7430 changed files with 2687981 additions and 2965473 deletions
|
|
@ -19,5 +19,5 @@ class TestUTMCommon(common.TransactionCase):
|
|||
'name': 'User Employee',
|
||||
'login': 'user_employee_utm',
|
||||
'email': 'user_employee_utm@test.com',
|
||||
'groups_id': [(6, 0, [cls.env.ref('base.group_user').id])],
|
||||
'group_ids': [(6, 0, [cls.env.ref('base.group_user').id])],
|
||||
})
|
||||
|
|
|
|||
|
|
@ -11,5 +11,5 @@ class TestRoutes(HttpCaseWithUserDemo):
|
|||
def test_01_web_session_destroy(self):
|
||||
base_url = self.env['ir.config_parameter'].sudo().get_param('web.base.url')
|
||||
self.authenticate('demo', 'demo')
|
||||
res = self.opener.post(url=base_url + '/web/session/destroy', json={})
|
||||
res = self.url_open(url=base_url + '/web/session/destroy', json={})
|
||||
self.assertEqual(res.status_code, 200)
|
||||
|
|
|
|||
|
|
@ -57,6 +57,52 @@ class TestUtm(TestUTMCommon):
|
|||
self.assertNotIn(source_4, source_1 | source_2 | source_3 | source_3_2 | source_4_2)
|
||||
self.assertEqual(source_4.name, 'Source 4')
|
||||
|
||||
def test_fetch_or_create_medium(self):
|
||||
new_medium = self.env['utm.medium'].create({'name': 'New Medium'})
|
||||
self.env['ir.model.data'].create({
|
||||
'model': 'utm.medium',
|
||||
'module': 'utm',
|
||||
'name': 'utm_medium_new_medium',
|
||||
'res_id': new_medium.id,
|
||||
})
|
||||
# fetch existing medium
|
||||
self.assertEqual(new_medium, self.env.ref('utm.utm_medium_new_medium'))
|
||||
self.assertEqual(new_medium, self.env['utm.medium']._fetch_or_create_utm_medium('New Medium'))
|
||||
self.assertEqual(new_medium, self.env['utm.medium']._fetch_or_create_utm_medium('new medium'))
|
||||
self.assertEqual(new_medium, self.env['utm.medium']._fetch_or_create_utm_medium('new_medium'))
|
||||
self.assertEqual(new_medium, self.env['utm.medium']._fetch_or_create_utm_medium('new.Medium'))
|
||||
|
||||
# create and fetch medium
|
||||
other_medium = self.env['utm.medium']._fetch_or_create_utm_medium('Another Medium')
|
||||
self.assertEqual(other_medium, self.env['utm.medium']._fetch_or_create_utm_medium('Another Medium'))
|
||||
self.assertEqual(other_medium, self.env.ref('utm.utm_medium_another_medium'))
|
||||
self.assertEqual(other_medium, self.env['utm.medium']._fetch_or_create_utm_medium('another medium'))
|
||||
|
||||
def test_find_or_create_record_case(self):
|
||||
""" Find-or-create should be case insensitive to avoid useless duplication """
|
||||
name = "LinkedIn Plus"
|
||||
source = self.env["utm.mixin"]._find_or_create_record("utm.source", name)
|
||||
self.assertEqual(source.name, name)
|
||||
|
||||
# case insensitive equal (also strip spaces)
|
||||
for src in ("linkedin plus", "Linkedin plus", "LINKEDIN PLUS", f"{name} ", f" {name}"):
|
||||
with self.subTest(src=src):
|
||||
found = self.env['utm.mixin']._find_or_create_record("utm.source", src)
|
||||
self.assertEqual(found, source)
|
||||
# not equal, just to be sure we don't do a pure ilike
|
||||
for src in ("LinkedIn", "Plus"):
|
||||
with self.subTest(src=src):
|
||||
found = self.env['utm.mixin']._find_or_create_record("utm.source", src)
|
||||
self.assertNotEqual(found, source)
|
||||
|
||||
def test_find_or_create_with_archived_record(self):
|
||||
archived_campaign = self.env['utm.campaign'].create([{
|
||||
'active': False,
|
||||
'name': 'Archived Campaign',
|
||||
}])
|
||||
campaign = self.env['utm.mixin']._find_or_create_record('utm.campaign', 'Archived Campaign')
|
||||
self.assertEqual(archived_campaign, campaign, "An archived record must be found instead of re-created.")
|
||||
|
||||
def test_name_generation(self):
|
||||
"""Test that the name is always unique. A counter must be added at the
|
||||
end of the name if it's not the case."""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue