[REM] website_sale_aplicoop: remove dead code and orphaned tests

Duplicate _translate_labels fallback, unreachable /eskaera/add-to-cart and
/eskaera/save-cart routes (the frontend cart is localStorage-only and uses
save-order), redundant pickup wrappers, unused pagination/count helpers and
fields, deprecated JS shims, and the already-empty checkout_summary.js and
i18n key/init leftovers.

Also drops 11 tests/*.py never wired into tests/__init__.py: three were
unimplemented placeholders (setUp with no assertions), and the other eight
had real assertions but were bit-rotted against the current schema (e.g.
res.partner.is_supplier no longer exists) — wiring them in surfaced 43
failures unrelated to this cleanup. Verified 0 failed/0 errors of 270 tests
both before and after.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
GitHub Copilot 2026-08-16 22:31:13 +02:00
parent 6ba554c91b
commit b3999e2283
24 changed files with 5 additions and 5598 deletions

View file

@ -6,6 +6,7 @@ import re
from datetime import timedelta
from dateutil.relativedelta import relativedelta
from odoo import api
from odoo import fields
from odoo import models
@ -283,23 +284,6 @@ class GroupOrder(models.Model):
help="Image displayed alongside the consumer group order name",
attachment=True,
)
display_image = fields.Binary(
compute="_compute_display_image",
store=True,
help="Image to display: uses consumer group order image if set, otherwise group image",
attachment=True,
)
@api.depends("image", "group_ids")
def _compute_display_image(self):
"""Use order image if set, otherwise use first group image."""
for record in self:
if record.image:
record.display_image = record.image
elif record.group_ids and record.group_ids[0].image_1920:
record.display_image = record.group_ids[0].image_1920
else:
record.display_image = False
@api.depends("delivery_product_id")
def _compute_home_delivery(self):
@ -700,31 +684,6 @@ class GroupOrder(models.Model):
)
return demand
def _get_products_paginated(self, order_id, page=1, per_page=20):
"""Get paginated products for a group order.
Args:
order_id: ID of the group order
page: Page number (1-indexed)
per_page: Number of products per page
Returns:
tuple: (products_page, total_count, has_next)
- products_page: recordset of product.product for this page
- total_count: total number of products in order
- has_next: boolean indicating if there are more pages
"""
all_products = self._get_products_for_group_order(order_id)
total_count = len(all_products)
# Calculate pagination
offset = (page - 1) * per_page
products_page = all_products[offset : offset + per_page]
has_next = offset + per_page < total_count
return products_page, total_count, has_next
# === Pickup slots helpers ===
pickup_slot_ids = fields.One2many(
"group.order.slot",
@ -734,12 +693,6 @@ class GroupOrder(models.Model):
tracking=True,
)
pickup_slots_count = fields.Integer(
compute="_compute_pickup_slots_count",
store=False,
help="Number of pickup slots configured for this order",
)
next_pickup_slot_id = fields.Many2one(
"group.order.slot",
string="Next Pickup Slot",
@ -755,12 +708,6 @@ class GroupOrder(models.Model):
help="Datetime of the next pickup occurrence for the selected slot",
)
@api.depends("pickup_slot_ids")
def _compute_pickup_slots_count(self):
"""Simple count of configured slots for quick UI badges."""
for record in self:
record.pickup_slots_count = len(record.pickup_slot_ids or [])
@api.depends(
"pickup_slot_ids",
"pickup_slot_ids.start_hour",
@ -779,7 +726,8 @@ class GroupOrder(models.Model):
- If no slots are configured, leave fields empty (fallback handled
by existing pickup_day logic).
"""
from datetime import datetime, time
from datetime import datetime
from datetime import time
for record in self:
record.next_pickup_slot_id = False
@ -1420,7 +1368,8 @@ class GroupOrder(models.Model):
return
failure_reasons = failure_reasons or {}
from markupsafe import Markup, escape
from markupsafe import Markup
from markupsafe import escape
items = Markup()
for sale_order in failed_sale_orders: