OCA / l10n-italy

Odoo Italian localization
https://www.odoo-italia.org
GNU Affero General Public License v3.0
153 stars 305 forks source link

l10n_it_bill_of_entry - test rotti #3953

Closed francesco-ooops closed 8 months ago

francesco-ooops commented 8 months ago

Vedi https://github.com/OCA/l10n-italy/actions/workflows/test.yml?query=branch%3A14.0

2024-02-13 15:45:44,935 566 ERROR odoo odoo.addons.l10n_it_bill_of_entry.tests.test_bill_of_entry: ERROR: TestBillOfEntry.test_generate_bill_of_entry Traceback (most recent call last): File "/__w/l10n-italy/l10n-italy/l10n_it_bill_of_entry/tests/test_bill_of_entry.py", line 141, in setUp (self.product1, 1, 2500), File "/w/l10n-italy/l10n-italy/l10n_it_bill_of_entry/tests/test_bill_of_entry.py", line 27, in _create_invoice line.product_id = product File "/opt/odoo/odoo/tests/common.py", line 1988, in setattr__ self._perform_onchange([field]) File "/opt/odoo/odoo/tests/common.py", line 2136, in _perform_onchange result = record.onchange(self._onchange_values(), fields, spec) File "/opt/odoo/odoo/models.py", line 6323, in onchange result['value'] = snapshot1.diff(snapshot0, force=first_call) File "/opt/odoo/odoo/models.py", line 6176, in diff commands.append((0, line.id.ref or 0, line_diff)) AttributeError: 'NoneType' object has no attribute 'ref'

odooNextev commented 8 months ago

Vedo che il file del test non viene modificato da molto tempo e soprattutto non dovrebbe essere cambiato post migrazione

odooNextev commented 8 months ago

Posso confermare che è qualcosa nel core di Odoo perchè dopo aver fatto un pull ed aggiornato la 14.0 restituisce anche in locale l'errore, prima no. Immagino sia qualcosa qui: from odoo.addons.account.tests.common import AccountTestInvoicingCommon

francesco-ooops commented 8 months ago

sembra dipendere da https://github.com/odoo/odoo/pull/151455

odooNextev commented 8 months ago

sembra dipendere da odoo/odoo#151455

da quello che ho capito fallisce la mappatura delle imposte che dovrebbe essere data dalla posizione fiscale

odooNextev commented 8 months ago

non manca la tax_dest_id? https://github.com/OCA/l10n-italy/blob/16.0/l10n_it_bill_of_entry/tests/test_bill_of_entry.py#L86

L'errore penso sia causato dalla mancanza della destinazione perchè restituisce NoneType e chiude lì tutto, ma forse prima della modifica del core di Odoo veniva compilata in automatico

@SirAionTech ne sai qualcosa (ho visto che hai toccato per ultimo il file)?

SirAionTech commented 8 months ago

non manca la tax_dest_id? https://github.com/OCA/l10n-italy/blob/16.0/l10n_it_bill_of_entry/tests/test_bill_of_entry.py#L86

L'errore penso sia causato dalla mancanza della destinazione perchè restituisce NoneType e chiude lì tutto, ma forse prima della modifica del core di Odoo veniva compilata in automatico

@SirAionTech ne sai qualcosa (ho visto che hai toccato per ultimo il file)?

Eh sì il mio contributo di cambiare le virgolette https://github.com/OCA/l10n-italy/commit/7f8df2231a79e937f4758230654fe0e4b1881396#diff-6795cc077d55d8b50653bc85f1b1ec8864643ecda80d90e5d291ca2f4dc4a674R99-L104

effettivamente è stato fondamentale :laughing:

Non ne so nulla, ma da una rapida ricerca il test è così dall'inizio dei tempi https://github.com/OCA/l10n-italy/pull/381/files#diff-6795cc077d55d8b50653bc85f1b1ec8864643ecda80d90e5d291ca2f4dc4a674R104-R107. Se l'imposta di destinazione non è obbligatoria per la creazione della posizione fiscale, non penso si dovrebbero rompere cose quando si usa una posizione fiscale senza imposta di destinazione.

odooNextev commented 8 months ago

non manca la tax_dest_id? https://github.com/OCA/l10n-italy/blob/16.0/l10n_it_bill_of_entry/tests/test_bill_of_entry.py#L86 L'errore penso sia causato dalla mancanza della destinazione perchè restituisce NoneType e chiude lì tutto, ma forse prima della modifica del core di Odoo veniva compilata in automatico @SirAionTech ne sai qualcosa (ho visto che hai toccato per ultimo il file)?

effettivamente è stato fondamentale 😆

avevo visto solo gli ultimi 2 copyright, senza guardare cosa avevi fatto di preciso 😅

Non ne so nulla, ma da una rapida ricerca il test è così dall'inizio dei tempi https://github.com/OCA/l10n-italy/pull/381/files#diff-6795cc077d55d8b50653bc85f1b1ec8864643ecda80d90e5d291ca2f4dc4a674R104-R107. Se l'imposta di destinazione non è obbligatoria per la creazione della posizione fiscale, non penso si dovrebbero rompere cose quando si usa una posizione fiscale senza imposta di destinazione.

Penso di aver trovato l'errore e come segnalava @francesco-ooops è legato a questa PR: https://github.com/odoo/odoo/pull/151455

Prima questa funzione (https://github.com/odoo/odoo/pull/151455/files) ritornava account.tax() quando non trovava la destinazione nella mappatura, ora torna account.tax(None, )

francesco-ooops commented 8 months ago

risolto