diff options
| author | Thibault Delavallée <tde@odoo.com> | 2019-09-12 11:27:44 +0000 |
|---|---|---|
| committer | Thibault Delavallée <tde@odoo.com> | 2019-09-13 10:05:43 +0000 |
| commit | 0eec4d22a2768836891e682ffc172de5a5a23b39 (patch) | |
| tree | ee5c073cb0900047ef5d3e9d0c1b26481e7479d0 /addons/website_slides | |
| parent | 98f847be3a7e2d3e28db977085a577b8295cc620 (diff) | |
[FIX] website_slides: avoid admin being twice member of courses
Since admin is responsible of all created demo channels and then re-added
manually as member in demo data of slide.channel.partner he is actually
twice member of some channels. This commit fixes that by resetting its
membership status before adding membership demo data.
PR #36756
Diffstat (limited to 'addons/website_slides')
| -rw-r--r-- | addons/website_slides/data/slide_user_demo.xml | 14 | ||||
| -rw-r--r-- | addons/website_slides/models/slide_channel.py | 2 | ||||
| -rw-r--r-- | addons/website_slides/tests/test_ui_wslides.py | 9 |
3 files changed, 19 insertions, 6 deletions
diff --git a/addons/website_slides/data/slide_user_demo.xml b/addons/website_slides/data/slide_user_demo.xml index 847d2bfa297..263d3ea443b 100644 --- a/addons/website_slides/data/slide_user_demo.xml +++ b/addons/website_slides/data/slide_user_demo.xml @@ -1,6 +1,20 @@ <?xml version="1.0" encoding="utf-8"?> <odoo><data noupdate="1"> + <!-- First of all: remove admin of all memberships to avoid noisy demo data --> + <function model="slide.channel" + name="_remove_membership" + eval="[ + [ref('website_slides.slide_channel_demo_0_gard_0'), + ref('website_slides.slide_channel_demo_1_gard1'), + ref('website_slides.slide_channel_demo_2_gard2'), + ref('website_slides.slide_channel_demo_3_furn0'), + ref('website_slides.slide_channel_demo_4_furn1'), + ref('website_slides.slide_channel_demo_5_furn2'), + ref('website_slides.slide_channel_demo_6_furn3')], + [ref('base.partner_admin')] + ]"/> + <!-- CHANNEL 0: Basics of Gardening --> <!-- ================================================== --> <record id="slide_channel_0_partner_admin" model="slide.channel.partner"> diff --git a/addons/website_slides/models/slide_channel.py b/addons/website_slides/models/slide_channel.py index 11ddec93597..ce37f9e2ce4 100644 --- a/addons/website_slides/models/slide_channel.py +++ b/addons/website_slides/models/slide_channel.py @@ -474,7 +474,7 @@ class Channel(models.Model): for channel in self: removed_channel_partner_domain = expression.OR([ removed_channel_partner_domain, - [('partner_id', 'in', partner_ids.ids), + [('partner_id', 'in', partner_ids), ('channel_id', '=', channel.id)] ]) diff --git a/addons/website_slides/tests/test_ui_wslides.py b/addons/website_slides/tests/test_ui_wslides.py index 7d7b93bcb78..50fd212e698 100644 --- a/addons/website_slides/tests/test_ui_wslides.py +++ b/addons/website_slides/tests/test_ui_wslides.py @@ -13,7 +13,7 @@ class TestUi(tests.HttpCase): user_demo.write({ 'groups_id': [(5, 0), (4, self.env.ref('base.group_user').id)] }) - self.env.ref('website_slides.slide_channel_demo_0_gard_0')._remove_membership(self.env.ref('base.partner_demo')) + self.env.ref('website_slides.slide_channel_demo_0_gard_0')._remove_membership(self.env.ref('base.partner_demo').ids) self.phantom_js( '/slides', @@ -29,7 +29,7 @@ class TestUi(tests.HttpCase): user_demo.write({ 'groups_id': [(5, 0), (4, self.env.ref('base.group_user').id), (4, self.env.ref('website.group_website_publisher').id)] }) - self.env.ref('website_slides.slide_channel_demo_0_gard_0')._remove_membership(self.env.ref('base.partner_demo')) + self.env.ref('website_slides.slide_channel_demo_0_gard_0')._remove_membership(self.env.ref('base.partner_demo').ids) self.phantom_js( '/slides', @@ -42,7 +42,7 @@ class TestUi(tests.HttpCase): # group_website_designer user_portal = self.env.ref('base.demo_user0') user_portal.flush() - self.env.ref('website_slides.slide_channel_demo_0_gard_0')._remove_membership(self.env.ref('base.partner_demo_portal')) + self.env.ref('website_slides.slide_channel_demo_0_gard_0')._remove_membership(self.env.ref('base.partner_demo_portal').ids) self.phantom_js( '/slides', @@ -61,7 +61,7 @@ class TestUiYoutube(tests.HttpCase): user_demo.write({ 'groups_id': [(5, 0), (4, self.env.ref('base.group_user').id)] }) - self.env.ref('website_slides.slide_channel_demo_0_gard_0')._remove_membership(self.env.ref('base.partner_demo')) + self.env.ref('website_slides.slide_channel_demo_3_furn0')._remove_membership(self.env.ref('base.partner_demo').ids) self.phantom_js( '/slides', @@ -77,7 +77,6 @@ class TestUiYoutube(tests.HttpCase): user_demo.write({ 'groups_id': [(5, 0), (4, self.env.ref('base.group_user').id), (4, self.env.ref('website.group_website_designer').id)] }) - self.env.ref('website_slides.slide_channel_demo_0_gard_0')._remove_membership(self.env.ref('base.partner_demo')) self.phantom_js( '/slides', |
