addons-cm/TEST_MANUAL.md
snt 4d23e98f7b Revertir cambio: eliminar cálculo duplicado de impuestos
El método _get_price() del addon OCA ya maneja correctamente los impuestos
según la configuración de Odoo. El cálculo adicional con compute_all() estaba
duplicando los impuestos cuando price_include estaba activado.

Cambios:
- Eliminado método _compute_price_with_taxes()
- Revertido eskaera_shop() para usar directamente _get_price()
- Revertido add_to_eskaera_cart() para usar directamente _get_price()

El precio mostrado ahora respeta la configuración de impuestos de Odoo
sin duplicación.
2026-02-11 19:54:28 +01:00

2 KiB

Test Manual - Verificar Precios con IVA

Para verificar que la corrección funciona:

1. Reiniciar Odoo y actualizar el módulo

cd /home/snt/Documentos/lab/odoo/kidekoop/addons-cm

# Actualizar el módulo
docker-compose restart odoo
docker-compose exec odoo odoo -c /etc/odoo/odoo.conf -d odoo -u website_sale_aplicoop --stop-after-init
docker-compose restart odoo

2. Verificar en el navegador

  1. Ir a: http://localhost:8069
  2. Iniciar sesión
  3. Navegar a la tienda: http://localhost:8069/eskaera
  4. Verificar que los precios mostrados incluyen IVA

3. Test de ejemplo

Producto: Pan integral (ejemplo)

  • Precio base: 2.50 €
  • IVA (10%): 0.25 €
  • Precio esperado en tienda: 2.75 €

Cambios Realizados

Archivo modificado: controllers/website_sale.py

  1. Nuevo método agregado (línea ~20):

    def _compute_price_with_taxes(self, product_variant, base_price, pricelist=None, fposition=None):
        """Calcula el precio con impuestos incluidos."""
    
  2. Método eskaera_shop() actualizado (línea ~516):

    • Ahora calcula price_with_taxes usando el nuevo método
    • Retorna precios CON IVA incluido
  3. Método add_to_eskaera_cart() actualizado (línea ~720):

    • Calcula precio CON IVA antes de retornar
    • Garantiza consistencia en carrito

Verificación de Sintaxis

# Verificar que no hay errores de sintaxis
cd /home/snt/Documentos/lab/odoo/kidekoop/addons-cm
python3 -m py_compile website_sale_aplicoop/controllers/website_sale.py
echo "✓ Sin errores de sintaxis"

Tests Unitarios Creados

Archivo: website_sale_aplicoop/tests/test_price_with_taxes_included.py

Contiene 13 tests que verifican:

  • Cálculo correcto de IVA 21%
  • Cálculo correcto de IVA 10%
  • Productos sin IVA
  • Múltiples impuestos
  • Posiciones fiscales
  • Y más...

Problema Solucionado

ANTES: Los precios mostraban 100.00 € (sin IVA) DESPUÉS: Los precios muestran 121.00 € (con IVA 21%)

Corrección aplicada exitosamente