Skip to Content

Name: [FIX] website, test_website: merge upstream 19.0 and make website tours robust on slow runners

State: Failed finished in 112m

PR State: open

PR Author: David Tran

PR Author Email:

PR: #1316

Committer: David Tran

Committer Email: david.tran@tvtmarine.com

Commit: 01d1866dad46358008ff0c7d19127e73f8b5c0d4

Description:

                                            [FIX] test_website: make test_replace_media tour robust on slow runners

After an image is replaced by another image, the step "ensure image
size is displayed" was satisfied by the old Image options container,
which stays mounted until the builder re-targets the new media. The
next "Replace" click then acted on the detached element ("Invalid
selection. Node is not part of the editable: None") and the Icon
container never appeared. Runbot signature: "[18/36] Tour
test_replace_media -> Step ensure icon block is displayed".

The tour now marks the container of the media being replaced and waits
for an Image container without that mark. That is the container of the
new media, a new component since containers are keyed per element.

Verified by injecting latency on /html_editor/get_image_info (+1 s):
the tour passes 3/3 with the fix and fails at the same step with the
same warning when the fix is reverted.

Signed-off-by: David Tran <david.tran@tvtmarine.com>
                                            

Branch: 19.0

Age:

Up-time:

Subbuilds Name State Detail
Build 427316 At install tests: from account to website_timesheet 100m Succeed Log
Build 427317 Post install tests: step install all modules 21m Succeed Log
Build 427318 Post install tests: from account to hr_recruitment_survey 113m Failed Log
Build 427319 Post install tests: from hr_skills to phone_validation 178m Failed Log
Build 427320 Post install tests: from point_of_sale to purchase_requisition_stock 144m Succeed Log
Build 427321 Post install tests: from purchase_stock to test_l10n_vn_viin_edi 109m Succeed Log
Build 427322 Post install tests: from test_mail to to_product_return_reason_stock 133m Succeed Log
Build 427323 Post install tests: from to_registration_email_blacklist to viin_approval_purpose_routing 98m Succeed Log
Build 427324 Post install tests: from viin_approval_sale to viin_product 123m Failed Log
Build 427325 Post install tests: from viin_project to web_unsplash 94m Succeed Log
Build 427326 Post install tests: from website to website_timesheet 89m Failed Log
Create Date Level Message
10/21/2026 09:00:41 PM INFO
Updated repository Viindoo-tvtmaaddons
10/21/2026 09:00:41 PM INFO
Updated repository Viindoo-erponline-enterprise
10/21/2026 09:00:41 PM INFO
Updated repository Viindoo-branding
10/21/2026 09:00:41 PM INFO
Cloned repository Viindoo-odoo
10/21/2026 11:20:05 PM ERROR
Subbuild # 427318: odoo.addons.calendar.tests.test_event_notifications: FAIL: TestEventNotifications.test_email_alarm_recurrence_rescheduled_by_cron Traceback (most recent call last): File "/data/build/rb-01d1866-225816/addons/calendar/tests/test_event_notifications.py", line 597, in test_email_alarm_recurrence_rescheduled_by_cron self.assertMailMail(self.customers[0], 'sent', author=self.user_root.partner_id) File "/data/build/rb-01d1866-225816/addons/mail/tests/common.py", line 732, in assertMailMail found_mail = self._find_mail_mail_wpartners(recipients, status, mail_message=mail_message, author=author, content=content, email_from=email_from) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/addons/mail/tests/common.py", line 562, in _find_mail_mail_wpartners raise AssertionError( AssertionError: mail.mail not found for message None / status sent / recipients [1408] / author ViindooBot (2), email_from (None) Missing: ['Customer Email (1408)'] From: res.partner(2,) ("ViindooBot" <viindoobot@example.viindoo.com>) - To: [1408] (State: outgoing)
10/21/2026 11:20:05 PM ERROR
Subbuild # 427318: odoo.tests.result: 1 failed, 0 error(s) of 2359 tests when loading database 'rb-01d1866-225816-427318'
10/22/2026 12:25:19 AM ERROR
Subbuild # 427319: odoo.addons.l10n_vn_viin.tests.test_vn_coa_template: FAIL: TestChartAccountVN.test_vn_coa_resync_rewrites_a_template_account_code_only_back_from_a_code_the_chart_itself_mapped Traceback (most recent call last): File "/data/build/Viindoo-tvtmaaddons-19.0/l10n_vn_viin/tests/test_vn_coa_template.py", line 3192, in test_vn_coa_resync_rewrites_a_template_account_code_only_back_from_a_code_the_chart_itself_mapped self.assertEqual( AssertionError: Items in the second set but not the first: 'base l10n_vn code' : fixture is not discriminating: the chart data yields no entry for one of the mappings
10/22/2026 12:25:19 AM ERROR
Subbuild # 427319: odoo.tests.result: 1 failed, 0 error(s) of 2472 tests when loading database 'rb-01d1866-225816-427319'
10/21/2026 11:30:02 PM ERROR
Subbuild # 427324: odoo.addons.viin_hr_contract.tests.test_hr_employee3: FAIL: TestHrEmployee3.test_04__list_leaves_intervals Traceback (most recent call last): File "/data/build/Viindoo-tvtmaaddons-19.0/viin_hr_contract/tests/test_hr_employee3.py", line 239, in test_04__list_leaves_intervals self.assertEqual(len(list_leaves_intervals), 1) AssertionError: 3 != 1
10/21/2026 11:30:02 PM ERROR
Subbuild # 427324: odoo.tests.result: 1 failed, 0 error(s) of 4690 tests when loading database 'rb-01d1866-225816-427324'
10/21/2026 10:55:38 PM ERROR
Subbuild # 427326: odoo.tests.suite: ERROR: setUpClass (odoo.addons.website_sale.tests.test_website_sale_gmc.TestWebsiteSaleGMC) Traceback (most recent call last): File "/data/build/rb-01d1866-225816/addons/website_sale/tests/common_gmc.py", line 20, in setUpClass cls.gmc_feed = cls.env['product.feed'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/addons/mail/models/mail_thread.py", line 325, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/Viindoo-erponline-enterprise-19.0/viin_customizer/models/models.py", line 123, in create return super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/rb-01d1866-225816/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/rb-01d1866-225816/addons/website_sale/models/product_feed.py", line 103, in _check_product_limit feed._get_feed_product_domain(), limit=const.PRODUCT_FEED_SOFT_LIMIT + 1 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/addons/website_sale/models/product_feed.py", line 226, in _get_feed_product_domain product_domain = self.website_id._get_basic_feed_product_domain() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/addons/website_sale/models/website.py", line 1084, in _get_basic_feed_product_domain Domain("type", "in", {"consu", "combo"}) TypeError: unsupported operand type(s) for &: 'DomainCondition' and 'list'
10/21/2026 10:55:38 PM ERROR
Subbuild # 427326: odoo.tests.suite: ERROR: setUpClass (odoo.addons.website_sale_stock.tests.test_website_sale_stock_gmc.TestWebsiteSaleStockGMC) Traceback (most recent call last): File "/data/build/rb-01d1866-225816/addons/website_sale_stock/tests/test_website_sale_stock_gmc.py", line 13, in setUpClass super().setUpClass() File "/data/build/rb-01d1866-225816/addons/website_sale/tests/common_gmc.py", line 20, in setUpClass cls.gmc_feed = cls.env['product.feed'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/addons/mail/models/mail_thread.py", line 325, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/Viindoo-erponline-enterprise-19.0/viin_customizer/models/models.py", line 123, in create return super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/rb-01d1866-225816/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/rb-01d1866-225816/addons/website_sale/models/product_feed.py", line 103, in _check_product_limit feed._get_feed_product_domain(), limit=const.PRODUCT_FEED_SOFT_LIMIT + 1 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/addons/website_sale/models/product_feed.py", line 226, in _get_feed_product_domain product_domain = self.website_id._get_basic_feed_product_domain() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/rb-01d1866-225816/addons/website_sale/models/website.py", line 1084, in _get_basic_feed_product_domain Domain("type", "in", {"consu", "combo"}) TypeError: unsupported operand type(s) for &: 'DomainCondition' and 'list'
10/21/2026 10:55:38 PM ERROR
Subbuild # 427326: odoo.tests.result: 0 failed, 2 error(s) of 803 tests when loading database 'rb-01d1866-225816-427326'