From 317884be6aa7445d65d67cd638d2d793ab3ff05c Mon Sep 17 00:00:00 2001 From: "Jose Suniaga [Vauxoo]" Date: Thu, 3 Jan 2019 19:10:59 +0000 Subject: [PATCH 1/2] [FIX] sale: Call the proper method in the test and not the partial one (continuation). In complement to issue reported in: https://github.com/odoo/odoo/pull/27316 closes odoo/odoo#29907 --- .../tests/test_sale_to_invoice_and_to_be_invoiced.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/addons/sale/tests/test_sale_to_invoice_and_to_be_invoiced.py b/addons/sale/tests/test_sale_to_invoice_and_to_be_invoiced.py index b5a28a435d3..c7df57978b9 100644 --- a/addons/sale/tests/test_sale_to_invoice_and_to_be_invoiced.py +++ b/addons/sale/tests/test_sale_to_invoice_and_to_be_invoiced.py @@ -77,7 +77,7 @@ class TestSaleOrderInvoicing(AccountingTestCase): self.assertEqual(sum(order.order_line.mapped('amt_invoiced')), 500.0, 'Sale: the Amount Invoiced for the sale order should be 500.0.') # Now I validate invoice_2. - invoice_2.invoice_validate() + invoice_2.action_invoice_open() self.assertEqual(sum(order.order_line.mapped('amt_to_invoice')), 0.0, 'Sale: the Amount To Invoice for the sale order should be 0.0.') self.assertEqual(sum(order.order_line.mapped('amt_invoiced')), 800.0, 'Sale: the Amount Invoiced for the sale order should be 800.0.') @@ -92,7 +92,7 @@ class TestSaleOrderInvoicing(AccountingTestCase): # I clicked on refund button. account_invoice_refund_1.with_context(context).invoice_refund() - invoice_1.refund_invoice_ids and invoice_1.refund_invoice_ids[0].invoice_validate() + invoice_1.refund_invoice_ids and invoice_1.refund_invoice_ids[0].action_invoice_open() self.assertEqual(sum(order.order_line.mapped('amt_to_invoice')), 0.0, 'Sale: the Amount To Invoice for the sale order should be 0.0.') self.assertEqual(sum(order.order_line.mapped('amt_invoiced')), 300.0, 'Sale: the Amount Invoiced for the sale order should be 300.0.') @@ -107,7 +107,7 @@ class TestSaleOrderInvoicing(AccountingTestCase): # I clicked on refund button. account_invoice_refund_2.with_context(context).invoice_refund() - invoice_2.refund_invoice_ids and invoice_2.refund_invoice_ids[0].invoice_validate() + invoice_2.refund_invoice_ids and invoice_2.refund_invoice_ids[0].action_invoice_open() self.assertEqual(sum(order.order_line.mapped('amt_to_invoice')), 0.0, 'Sale: the Amount To Invoice for the sale order should be 0.0.') self.assertEqual(sum(order.order_line.mapped('amt_invoiced')), 0.0, 'Sale: the Amount Invoiced for the sale order should be 0.0.') @@ -198,7 +198,7 @@ class TestSaleOrderInvoicing(AccountingTestCase): self.assertEqual(sale_line_ord.amt_invoiced, 0.0, 'Amount invoiced for ordered SO line should zero, there is no validated invoice at this moment') # validate invoice - invoice_1.invoice_validate() + invoice_1.action_invoice_open() self.assertEqual(sale_line_deli.amt_to_invoice, 0.0, 'Amount to invoice for delivered SO line is still zero, since its delivered quantity (on SO line) is zero') self.assertEqual(sale_line_deli.amt_invoiced, 0.0, 'Amount invoiced for delivered SO line is still zero, since its delivered quantity (on SO line) is zero, and there is no invoice at this moment') @@ -219,7 +219,7 @@ class TestSaleOrderInvoicing(AccountingTestCase): }) payment.with_context(invoice_context).create_invoices() invoice_2 = order.invoice_ids.sorted(key='id')[1] - invoice_2.invoice_validate() + invoice_2.action_invoice_open() self.assertEqual(sale_line_deli.amt_to_invoice, 0.0, 'Amount to invoice for delivered SO line is 0, since this is all invoiced') self.assertEqual(sale_line_deli.amt_invoiced, 1000.0, 'Amount invoiced for delivered SO line is now 1000, since the invoice for this product is validated') @@ -263,7 +263,7 @@ class TestSaleOrderInvoicing(AccountingTestCase): self.assertEqual(sale_line_ord.amt_invoiced, 40.0, 'Amount invoiced for ordered SO line should 40, there is a validated invoice at this moment') # validate third invoice - invoice_3.invoice_validate() + invoice_3.action_invoice_open() self.assertEqual(sale_line_deli.amt_to_invoice, 0.0, 'Amount to invoice for delivered SO line is now 0, since SO is cancel') self.assertEqual(sale_line_deli.amt_invoiced, 1300.0, 'Amount invoiced for delivered SO line is incremented, since the 3rd invoice for this product is validated') From 7eec6b3643999cb26216e56c001eb8aae65031ea Mon Sep 17 00:00:00 2001 From: Christophe Monniez Date: Mon, 28 Jan 2019 14:54:09 +0000 Subject: [PATCH 2/2] [FIX] packaging: allow install on fedora29 Fedora 29 switched to python 3.7. It seems that there is no official way to build a RPM package that could works with 3.6 and 3.7. Building two different packages for each version could open the pandora box of packaging. With this commit an ugly hack is used: if python3.7 is found, the odoo directory is symlinked into its site-packages dir. fixes #30579 closes odoo/odoo#30618 --- setup.cfg | 2 +- setup/redhat/postinstall.sh | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/setup.cfg b/setup.cfg index 3994ef225f2..4cce04e18da 100644 --- a/setup.cfg +++ b/setup.cfg @@ -9,7 +9,7 @@ requires = nodejs-less pychart pyparsing - python(abi) = 3.6 + python(abi) >= 3.6 python3-babel python3-decorator python3-docutils diff --git a/setup/redhat/postinstall.sh b/setup/redhat/postinstall.sh index 54b1b5cd56f..e6ee9106f7d 100644 --- a/setup/redhat/postinstall.sh +++ b/setup/redhat/postinstall.sh @@ -10,6 +10,12 @@ ODOO_LOG_DIR=/var/log/odoo ODOO_LOG_FILE=$ODOO_LOG_DIR/odoo-server.log ODOO_USER="odoo" +if [ -d /usr/lib/python3.7 ]; then + SITE_PACK_DIR37=/usr/lib/python3.7/site-packages + [[ ! -d ${SITE_PACK_DIR37} ]] && mkdir -p ${SITE_PACK_DIR37} + ln -s /usr/lib/python3.6/site-packages/odoo ${SITE_PACK_DIR37}/odoo +fi + if ! getent passwd | grep -q "^odoo:"; then groupadd $ODOO_GROUP adduser --system --no-create-home $ODOO_USER -g $ODOO_GROUP