Description: Post install tests for d -> !f
Commit: duong-addons:3e1cddfc  
Subject: [FIX] d_tiktok_shop_connector*: update tests for Odoo 19
Author: Claude
Commit: odoo:99edb6dd  
Subject: [IMP] account_edi_ubl_cii: Support section in UBL.
Author: Jugurtha
Build time: 14m
Wait time: 108m
Load time: 13m56s
Date (UTC) Level Message
2026-10-02 13:00:12 INFO Init build environment with config duong-addons-run-test
2026-10-02 13:00:12 Starting step restore from config duong-addons-run-test
2026-10-02 13:00:12 Restoring dump 01301-19-0-all.zip from build 1301
2026-10-02 13:00:12 Using Dockerfile Tag odoo:Docker19
2026-10-02 13:02:35 INFO Step restore finished in 2m
2026-10-02 13:02:35 Starting step test_post_install from config duong-addons-run-test
2026-10-02 13:02:35 Using Dockerfile Tag odoo:Docker19
2026-10-02 13:02:46 INFO 1 modules loaded in 1.38s, 0 queries (+0 extra)
2026-10-02 13:03:18 INFO 301 modules loaded in 31.45s, 0 queries (+0 extra)
2026-10-02 13:03:22 INFO Pregenerating assets bundles
2026-10-02 13:08:24 ERROR ERROR: TestMetaAdBoost.test_existing_social_post_candidates_match_selected_page Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 154, in test_existing_social_post_candidates_match_selected_page other_company_post = self.env['d.social.post.live'].with_company(other_company).create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live'
2026-10-02 13:08:24 WARNING Meta did not provide optional Instagram copyright information for media video_1: Meta API error: Video content was not found. | Code: 9005 | Subcode: 1452042
2026-10-02 13:08:24 WARNING Meta did not provide optional Instagram copyright information for media video_1: Meta is temporarily unavailable while checking Instagram boost eligibility. Click Refresh Eligibility or try Boost Post again. Details: Meta API error: Service temporarily unavailable | Code: 2 | Subcode: 1357038
2026-10-02 13:08:25 WARNING Unsupported Meta Graph API version invalid; using v25.0.
2026-10-02 13:08:25 WARNING no translation language detected, skipping translation <frame at 0x770578d85700, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 391, code loads_json>
2026-10-02 13:08:26 WARNING no translation language detected, skipping translation <frame at 0x77057c013b40, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 371, code build_adset_bid_payload>
2026-10-02 13:08:26 WARNING no translation language detected, skipping translation <frame at 0x77057c013b40, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 374, code build_adset_bid_payload>
2026-10-02 13:08:26 WARNING no translation language detected, skipping translation <frame at 0x77057c013b40, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 361, code build_adset_bid_payload>
2026-10-02 13:08:27 WARNING no translation language detected, skipping translation <frame at 0x77057c013b40, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 361, code build_adset_bid_payload>
2026-10-02 13:08:27 WARNING no translation language detected, skipping translation <frame at 0x77057c013b40, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 371, code build_adset_bid_payload>
2026-10-02 13:08:27 ERROR ERROR: TestMetaAdWizardPublish.test_cbo_minimum_roas_sends_adset_constraint Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_wizard_publish.py", line 447, in test_cbo_minimum_roas_sends_adset_constraint self.assertEqual(adset._build_bid_payload(), { ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 1289, in _build_bid_payload payload = build_adset_bid_payload( ^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py", line 371, in build_adset_bid_payload raise UserError(_('Minimum ROAS requires the VALUE optimization goal.')) odoo.exceptions.UserError: Minimum ROAS requires the VALUE optimization goal.
2026-10-02 13:08:30 WARNING no translation language detected, skipping translation <frame at 0x77057b0558a0, file '/data/build/duong-addons/d_crm_meta_lead_ads/wizards/meta_ad_wizard.py', line 313, code _guidance_selection_label>
2026-10-02 13:08:31 WARNING Meta dashboard insights throttled for ad account 4: User request limit reached | Code: 17
2026-10-02 13:08:31 WARNING Meta dashboard insights failed for ad account 4 Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 511, in get_dashboard_insights campaign_rows = service.get_insights( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1134, in __call__ return self._mock_call(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1138, in _mock_call return self._execute_mock_call(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1193, in _execute_mock_call raise effect odoo.exceptions.ValidationError: Code: 190 | Subcode: 463
2026-10-02 13:08:31 WARNING Meta dashboard insights throttled for ad account 4: Code: 17
2026-10-02 13:08:31 WARNING Meta dashboard insights failed for ad account 4 Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 486, in get_dashboard_insights date_from, date_to = self._validate_dashboard_range(date_from, date_to) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 431, in _validate_dashboard_range raise UserError(_('The dashboard date range cannot start more than 37 months ago.')) odoo.exceptions.UserError: The dashboard date range cannot start more than 37 months ago.
2026-10-02 13:08:31 WARNING Meta dashboard insights failed for ad account 4 Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 486, in get_dashboard_insights date_from, date_to = self._validate_dashboard_range(date_from, date_to) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 427, in _validate_dashboard_range raise UserError(_('The dashboard date range cannot include a future date.')) odoo.exceptions.UserError: The dashboard date range cannot include a future date.
2026-10-02 13:08:31 WARNING Meta dashboard insights failed for ad account 4 Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 486, in get_dashboard_insights date_from, date_to = self._validate_dashboard_range(date_from, date_to) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 422, in _validate_dashboard_range date_from, date_to = self._normalize_insight_range(date_from, date_to) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 344, in _normalize_insight_range raise UserError(_('The insight start date must be on or before the end date.')) odoo.exceptions.UserError: The insight start date must be on or before the end date.
2026-10-02 13:08:34 ERROR ERROR: setUpClass (odoo.addons.d_employee_portal.tests.test_employee_portal.TestEmployeePortal) Traceback (most recent call last): File "/data/build/duong-addons/d_employee_portal/tests/test_employee_portal.py", line 36, in setUpClass leaves = cls.env['hr.leave'].sudo().create([ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/hr_holidays_attendance/models/hr_leave.py", line 24, in create res = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/hr_holidays/models/hr_leave.py", line 958, in create holiday_sudo.action_approve() File "/data/build/odoo/addons/hr_holidays_attendance/models/hr_leave.py", line 62, in action_approve res = super().action_approve(check_state) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/hr_holidays/models/hr_leave.py", line 1200, in action_approve leave_to_validate._action_validate(check_state) File "/data/build/odoo/addons/hr_holidays/models/hr_leave.py", line 1282, in _action_validate raise ValidationError(_('The following employees are not supposed to work during that period:\n %s') % ','.join(leaves.mapped('employee_id.name'))) odoo.exceptions.ValidationError: The following employees are not supposed to work during that period: Portal Employee
2026-10-02 13:09:11 WARNING Tap to Pay refused: condition=Cancel trace= detail=None poiid=INSTALLATION-RESULT expected_poiid=INSTALLATION-RESULT sale_id=OdooTTP reference_length=13 reference=ORDER-UUID--1
2026-10-02 13:09:11 WARNING Tap to Pay refused: condition=UnavailableService trace=00-a22d7685bd34f01432b7a749b701e95f-cdbda6d4cff103ba-ff detail=message=&traceparent=00-a22d7685bd34f01432b7a749b701e95f-cdbda6d4cff103ba-ff poiid=INSTALLATION-RESULT expected_poiid=INSTALLATION-RESULT sale_id=OdooTTP reference_length=13 reference=ORDER-UUID--1
2026-10-02 13:09:11 WARNING Tap to Pay refused: condition=None trace= detail=None poiid=INSTALLATION-RESULT expected_poiid=INSTALLATION-RESULT sale_id=OdooTTP reference_length=13 reference=ORDER-UUID--1
2026-10-02 13:09:11 WARNING Tap to Pay refused: condition=None trace= detail=None poiid=None expected_poiid=INSTALLATION-RESULT sale_id=None reference_length=13 reference=ORDER-UUID--1
2026-10-02 13:09:12 WARNING Tap to Pay refused: condition=None trace= detail=None poiid=None expected_poiid=INSTALLATION-RESULT sale_id=None reference_length=13 reference=ORDER-UUID--1
2026-10-02 13:09:12 WARNING Tap to Pay refused: condition=UnavailableService trace= detail=message=app+not+boarded poiid=INSTALLATION-RESULT expected_poiid=INSTALLATION-RESULT sale_id=OdooTTP reference_length=13 reference=ORDER-UUID--1
2026-10-02 13:09:12 ERROR Error when sync post Expected sync error
2026-10-02 13:09:12 ERROR Facebook post sync request failed: Page ID: 123456789 | Endpoint: /123456789/published_posts | Batch: 2 | Fetched: 1 | Cursor: present | <redacted> <present>
2026-10-02 13:09:12 ERROR Error syncing Facebook posts: Facebook post sync request failed: Page ID: 123456789 | Endpoint: /123456789/published_posts | Batch: 2 | Fetched: 1 | Cursor: present | <redacted> <present>
2026-10-02 13:09:13 WARNING Failed to refresh Facebook reactions for post test-post-id; using stored values: Meta reaction request failed
2026-10-02 13:09:13 WARNING Invalid Facebook post sync limit; using default limit of 500
2026-10-02 13:09:13 WARNING Invalid Facebook post sync limit; using default limit of 500
2026-10-02 13:09:13 WARNING Invalid Facebook post sync limit; using default limit of 500
2026-10-02 13:09:13 WARNING Facebook post sync response too large, retrying from the same cursor with one post per request: Page ID: 123456789 | Endpoint: /123456789/published_posts | Batch: 1 | Fetched: 0 | Cursor: initial
2026-10-02 13:09:13 WARNING Facebook post sync response too large, retrying from the same cursor with one post per request: Page ID: 123456789 | Endpoint: /123456789/published_posts | Batch: 1 | Fetched: 0 | Cursor: initial
2026-10-02 13:09:14 WARNING TikTok Business refused the request for post []: code=40100, status=None, request_id=None, error=Access token is invalid
2026-10-02 13:09:14 WARNING TikTok Business refused the request for post []: code=None, status=404, request_id=None, error=404 Client Error: Not Found for url: https://example
2026-10-02 13:09:14 WARNING TikTok Business refused the request for post []: code=50002, status=400, request_id=None, error=Caption too long
2026-10-02 13:09:14 WARNING TikTok Business status check failed for post []: code=None, status=None, error=boom
2026-10-02 13:09:14 WARNING TikTok Business status check failed for post []: code=None, status=503, error=boom
2026-10-02 13:09:14 WARNING TikTok Business status check failed for post []: code=40100, status=None, error=Access token is invalid
2026-10-02 13:09:14 WARNING TikTok Business status check failed for post []: code=None, status=None, error=
2026-10-02 13:09:14 WARNING TikTok Business refused the request for post []: code=None, status=None, request_id=None, error=HTTPSConnectionPool: Max retries exceeded
2026-10-02 13:09:14 WARNING TikTok Business refused the request for post []: code=None, status=None, request_id=None, error=Expecting value: line 1 column 1
2026-10-02 13:09:15 WARNING TikTok Business refused the request for post []: code=None, status=200, request_id=None, error=TikTok returned a response that could not be read
2026-10-02 13:09:16 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:16 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:16 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:16 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:16 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:16 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:16 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:16 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:16 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:17 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:17 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:17 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:17 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:09:22 ERROR FAIL: TestTikTokSkuMapping.test_api_error_sets_error_status_without_raising Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 189, in test_api_error_sets_error_status_without_raising self.assertEqual(variant.tiktok_mapping_status, 'error') AssertionError: 'not_checked' != 'error' - not_checked + error
2026-10-02 13:09:23 ERROR FAIL: TestTikTokSkuMapping.test_api_product_sync_imports_product_attribute_lines Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 942, in test_api_product_sync_imports_product_attribute_lines self.assertEqual(len(calls), 1) AssertionError: 2 != 1
2026-10-02 13:09:23 ERROR FAIL: TestTikTokSkuMapping.test_api_product_sync_marks_returned_sku_as_matched Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 270, in test_api_product_sync_marks_returned_sku_as_matched self.assertEqual(len(calls), 1) AssertionError: 2 != 1
2026-10-02 13:09:23 ERROR FAIL: TestTikTokSkuMapping.test_api_product_sync_updates_existing_mapping_without_revalidation Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 304, in test_api_product_sync_updates_existing_mapping_without_revalidation self.assertEqual(len(calls), 1) AssertionError: 2 != 1
2026-10-02 13:09:28 ERROR FAIL: TestTikTokSkuMapping.test_app_credentials_are_scoped_to_the_selected_company Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 963, in test_app_credentials_are_scoped_to_the_selected_company self.assertEqual(self.service._get_app_credentials(self.env.company), { AssertionError: {'app_key': 'legacy-key', 'app_secret': 'legacy-secret[30 chars]ice'} != {'app_key': 'current-key', 'app_secret': 'current-secr[32 chars]ice'} - {'app_key': 'legacy-key', ? ^ ^^^^ + {'app_key': 'current-key', ? ^^^^ ^^ - 'app_secret': 'legacy-secret', ? ^ ^^^^ + 'app_secret': 'current-secret', ? ^^^^ ^^ 'service_id': 'current-service'}
2026-10-02 13:09:28 ERROR FAIL: TestTikTokSkuMapping.test_child_location_stock_and_reservations_queue_the_owning_shop_product Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 580, in test_child_location_stock_and_reservations_queue_the_owning_shop_product self.assertEqual(template.tiktok_sync_status, 'pending_update') AssertionError: 'synced' != 'pending_update' - synced + pending_update
2026-10-02 13:09:29 ERROR FAIL: TestTikTokSkuMapping.test_get_attributes_sync_keeps_sales_attributes_out_of_product_lines Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 379, in test_get_attributes_sync_keeps_sales_attributes_out_of_product_lines self.assertEqual(len(calls), 1) AssertionError: 3 != 1
2026-10-02 13:09:30 ERROR FAIL: TestTikTokSkuMapping.test_inventory_user_can_queue_the_matching_tiktok_product Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 1015, in test_inventory_user_can_queue_the_matching_tiktok_product self.assertEqual(template.tiktok_sync_status, 'pending_update') AssertionError: 'none' != 'pending_update' - none + pending_update
2026-10-02 13:09:39 ERROR ERROR: TestTikTokSkuMapping.test_legacy_global_credentials_migrate_without_overwriting_companies Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 991, in test_legacy_global_credentials_migrate_without_overwriting_companies spec.loader.exec_module(migration) File "<frozen importlib._bootstrap_external>", line 991, in exec_module File "<frozen importlib._bootstrap_external>", line 1128, in get_code File "<frozen importlib._bootstrap_external>", line 1186, in get_data FileNotFoundError: [Errno 2] No such file or directory: '/data/build/duong-addons/d_tiktok_shop_connector/migrations/0.8/post-migrate.py'
2026-10-02 13:09:40 ERROR FAIL: TestTikTokSkuMapping.test_new_stock_quant_queues_the_owning_shop_product Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 558, in test_new_stock_quant_queues_the_owning_shop_product self.assertEqual(template.tiktok_sync_status, 'pending_update') AssertionError: 'none' != 'pending_update' - none + pending_update
2026-10-02 13:09:41 ERROR FAIL: TestTikTokSkuMapping.test_product_detail_without_sku_sets_mismatch Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 173, in test_product_detail_without_sku_sets_mismatch self.assertEqual(variant.tiktok_mapping_status, 'mismatch') AssertionError: 'not_checked' != 'mismatch' - not_checked + mismatch
2026-10-02 13:09:54 ERROR FAIL: TestTikTokSkuMapping.test_sku_not_found_sets_status_without_error Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 157, in test_sku_not_found_sets_status_without_error self.assertEqual(variant.tiktok_mapping_status, 'not_found') AssertionError: 'not_checked' != 'not_found' - not_checked + not_found
2026-10-02 13:09:54 ERROR FAIL: TestTikTokSkuMapping.test_sku_only_search_matches_and_sets_template_product_id Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 122, in test_sku_only_search_matches_and_sets_template_product_id self.assertEqual(template.tiktok_id, 'product_1') AssertionError: False != 'product_1'
2026-10-02 13:09:56 ERROR FAIL: TestTikTokSkuMapping.test_template_product_id_write_validates_existing_sku Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 141, in test_template_product_id_write_validates_existing_sku self.assertEqual(variant.tiktok_mapping_status, 'matched') AssertionError: 'not_checked' != 'matched' - not_checked + matched
2026-10-02 13:09:59 WARNING /data/build/duong-addons/d_tiktok_shop_connector_customer_service/models/d_tiktok_shop.py:371: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC). File "/data/build/odoo/odoo-bin", line 6, in <module> odoo.cli.main() File "/data/build/odoo/odoo/cli/command.py", line 133, in main command().run(args) File "/data/build/odoo/odoo/cli/server.py", line 127, in run main(args) File "/data/build/odoo/odoo/cli/server.py", line 118, in main rc = server.start(preload=config['db_name'], stop=stop) File "/data/build/odoo/odoo/service/server.py", line 1677, in start rc = server.run(preload, stop) File "/data/build/odoo/odoo/service/server.py", line 714, in run rc = preload_registries(preload) File "/data/build/odoo/odoo/service/server.py", line 1607, in preload_registries result = loader.run_suite(post_install_suite, global_report=registry._assertion_report) File "/data/build/odoo/odoo/tests/loader.py", line 116, in run_suite suite(results) File "/usr/lib/python3.12/unittest/suite.py", line 84, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/suite.py", line 79, in run test(result) File "/usr/lib/python3.12/unittest/case.py", line 690, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/case.py", line 216, in run self._callTestMethod(testMethod) File "/data/build/odoo/odoo/tests/case.py", line 184, in _callTestMethod method() File "/data/build/duong-addons/d_tiktok_shop_connector_customer_service/tests/test_customer_service_api.py", line 102, in test_import_message_dedupes_by_shop_message_id imported, is_buyer, message_id = self.shop._import_tiktok_message_payload(channel, payload) File "/data/build/duong-addons/d_tiktok_shop_connector_customer_service/models/d_tiktok_shop.py", line 203, in _import_tiktok_message_payload created_dt = self._tiktok_ts_to_dt(normalized.get('created_time')) or fields.Datetime.now() File "/data/build/duong-addons/d_tiktok_shop_connector_customer_service/models/d_tiktok_shop.py", line 371, in _tiktok_ts_to_dt return datetime.utcfromtimestamp(ts)
2026-10-02 13:10:21 WARNING /data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py:421: DeprecationWarning: check_access_rights() is deprecated since 18.0; use check_access() instead. File "/data/build/odoo/odoo-bin", line 6, in <module> odoo.cli.main() File "/data/build/odoo/odoo/cli/command.py", line 133, in main command().run(args) File "/data/build/odoo/odoo/cli/server.py", line 127, in run main(args) File "/data/build/odoo/odoo/cli/server.py", line 118, in main rc = server.start(preload=config['db_name'], stop=stop) File "/data/build/odoo/odoo/service/server.py", line 1677, in start rc = server.run(preload, stop) File "/data/build/odoo/odoo/service/server.py", line 714, in run rc = preload_registries(preload) File "/data/build/odoo/odoo/service/server.py", line 1607, in preload_registries result = loader.run_suite(post_install_suite, global_report=registry._assertion_report) File "/data/build/odoo/odoo/tests/loader.py", line 116, in run_suite suite(results) File "/usr/lib/python3.12/unittest/suite.py", line 84, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/suite.py", line 79, in run test(result) File "/usr/lib/python3.12/unittest/case.py", line 690, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/case.py", line 216, in run self._callTestMethod(testMethod) File "/data/build/odoo/odoo/tests/case.py", line 184, in _callTestMethod method() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/tests/test_product_listing_mapping.py", line 1183, in test_remote_listing_delete_rolls_back_local_cleanup_when_api_fails listing.with_user(manager).action_delete_from_tiktok() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 421, in action_delete_from_tiktok listing.check_access_rights('write')
2026-10-02 13:10:21 WARNING /data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py:422: DeprecationWarning: check_access_rule() is deprecated since 18.0; use check_access() instead. File "/data/build/odoo/odoo-bin", line 6, in <module> odoo.cli.main() File "/data/build/odoo/odoo/cli/command.py", line 133, in main command().run(args) File "/data/build/odoo/odoo/cli/server.py", line 127, in run main(args) File "/data/build/odoo/odoo/cli/server.py", line 118, in main rc = server.start(preload=config['db_name'], stop=stop) File "/data/build/odoo/odoo/service/server.py", line 1677, in start rc = server.run(preload, stop) File "/data/build/odoo/odoo/service/server.py", line 714, in run rc = preload_registries(preload) File "/data/build/odoo/odoo/service/server.py", line 1607, in preload_registries result = loader.run_suite(post_install_suite, global_report=registry._assertion_report) File "/data/build/odoo/odoo/tests/loader.py", line 116, in run_suite suite(results) File "/usr/lib/python3.12/unittest/suite.py", line 84, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/suite.py", line 79, in run test(result) File "/usr/lib/python3.12/unittest/case.py", line 690, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/case.py", line 216, in run self._callTestMethod(testMethod) File "/data/build/odoo/odoo/tests/case.py", line 184, in _callTestMethod method() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/tests/test_product_listing_mapping.py", line 1183, in test_remote_listing_delete_rolls_back_local_cleanup_when_api_fails listing.with_user(manager).action_delete_from_tiktok() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 422, in action_delete_from_tiktok listing.check_access_rule('write')
2026-10-02 13:10:21 WARNING /data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py:424: DeprecationWarning: check_access_rights() is deprecated since 18.0; use check_access() instead. File "/data/build/odoo/odoo-bin", line 6, in <module> odoo.cli.main() File "/data/build/odoo/odoo/cli/command.py", line 133, in main command().run(args) File "/data/build/odoo/odoo/cli/server.py", line 127, in run main(args) File "/data/build/odoo/odoo/cli/server.py", line 118, in main rc = server.start(preload=config['db_name'], stop=stop) File "/data/build/odoo/odoo/service/server.py", line 1677, in start rc = server.run(preload, stop) File "/data/build/odoo/odoo/service/server.py", line 714, in run rc = preload_registries(preload) File "/data/build/odoo/odoo/service/server.py", line 1607, in preload_registries result = loader.run_suite(post_install_suite, global_report=registry._assertion_report) File "/data/build/odoo/odoo/tests/loader.py", line 116, in run_suite suite(results) File "/usr/lib/python3.12/unittest/suite.py", line 84, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/suite.py", line 79, in run test(result) File "/usr/lib/python3.12/unittest/case.py", line 690, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/case.py", line 216, in run self._callTestMethod(testMethod) File "/data/build/odoo/odoo/tests/case.py", line 184, in _callTestMethod method() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/tests/test_product_listing_mapping.py", line 1183, in test_remote_listing_delete_rolls_back_local_cleanup_when_api_fails listing.with_user(manager).action_delete_from_tiktok() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 424, in action_delete_from_tiktok mappings.check_access_rights('unlink')
2026-10-02 13:10:21 WARNING /data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py:425: DeprecationWarning: check_access_rule() is deprecated since 18.0; use check_access() instead. File "/data/build/odoo/odoo-bin", line 6, in <module> odoo.cli.main() File "/data/build/odoo/odoo/cli/command.py", line 133, in main command().run(args) File "/data/build/odoo/odoo/cli/server.py", line 127, in run main(args) File "/data/build/odoo/odoo/cli/server.py", line 118, in main rc = server.start(preload=config['db_name'], stop=stop) File "/data/build/odoo/odoo/service/server.py", line 1677, in start rc = server.run(preload, stop) File "/data/build/odoo/odoo/service/server.py", line 714, in run rc = preload_registries(preload) File "/data/build/odoo/odoo/service/server.py", line 1607, in preload_registries result = loader.run_suite(post_install_suite, global_report=registry._assertion_report) File "/data/build/odoo/odoo/tests/loader.py", line 116, in run_suite suite(results) File "/usr/lib/python3.12/unittest/suite.py", line 84, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/suite.py", line 79, in run test(result) File "/usr/lib/python3.12/unittest/case.py", line 690, in __call__ return self.run(*args, **kwds) File "/data/build/odoo/odoo/tests/case.py", line 216, in run self._callTestMethod(testMethod) File "/data/build/odoo/odoo/tests/case.py", line 184, in _callTestMethod method() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/tests/test_product_listing_mapping.py", line 1183, in test_remote_listing_delete_rolls_back_local_cleanup_when_api_fails listing.with_user(manager).action_delete_from_tiktok() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 425, in action_delete_from_tiktok mappings.check_access_rule('unlink')
2026-10-02 13:10:23 ERROR ERROR: TestTikTokProductListingMapping.test_remote_listing_delete_stages_local_cleanup_before_api_call Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/tests/test_product_listing_mapping.py", line 1154, in test_remote_listing_delete_stages_local_cleanup_before_api_call listing.with_user(manager).action_delete_from_tiktok() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 429, in action_delete_from_tiktok mappings.unlink() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 783, in unlink listings._sync_legacy_projection() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 242, in _sync_legacy_projection return self._sync_legacy_projection_for_templates(self.mapped('product_tmpl_id')) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 226, in _sync_legacy_projection_for_templates ).write(values) ^^^^^^^^^^^^^ File "/data/build/odoo/addons/sale_timesheet/models/product_template.py", line 110, in write return super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product.py", line 56, in write )).write(vals) ^^^^^^^^^^^ File "/data/build/odoo/addons/sale_project/models/product_template.py", line 145, in write return super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_website_amp_sale/models/product_template.py", line 31, in write res = super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/product.py", line 435, in write result = super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/website_sale/models/product_template.py", line 275, in write return super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/rating/models/rating_mixin.py", line 102, in write result = super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/pos_self_order/models/product_product.py", line 75, in write res = super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/point_of_sale/models/product_template.py", line 53, in write return super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock_account/models/product.py", line 116, in write res = super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mrp/models/product.py", line 77, in write return super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock/models/product.py", line 1146, in write res = super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/product/models/product_template.py", line 589, in write res = super(ProductTemplate, self).write(vals) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 392, in write result = super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/website/models/mixins.py", line 250, in write return super().write(vals) ^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4384, in write self.check_access('write') File "/data/build/odoo/odoo/orm/models.py", line 4121, in check_access raise result[1]() odoo.exceptions.AccessError: You are not allowed to modify 'Product' (product.template) records. This operation is allowed for the following groups: - Products/Create Contact your administrator to request access if necessary.
2026-10-02 13:10:28 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:29 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:30 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:31 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:32 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:34 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:35 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:37 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:38 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:39 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:42 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:49 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:53 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:10:58 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:11:10 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:11:11 WARNING <function> returns an HTTPException instead of raising it.
2026-10-02 13:11:14 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:11:16 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:11:17 WARNING AMP CSS bundle size 62400 bytes is approaching 75 KB limit
2026-10-02 13:11:19 Log limit reached (full logs are still available in the log file)
2026-10-02 13:14:08 INFO Getting results for build 01307-19-0
2026-10-02 13:14:08 Step test_post_install finished in 11m
2026-10-02 14:24:28 INFO Killing build 01307-19-0, requested by OdooBot (user #1)
2026-10-02 14:24:28 INFO Killing build 01307-19-0, requested by OdooBot (user #1)