60 lines
2.0 KiB
Python
60 lines
2.0 KiB
Python
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from odoo import Command
|
|
from odoo.tests import tagged
|
|
|
|
from odoo.addons.sale.tests.common import SaleCommon
|
|
|
|
|
|
@tagged('post_install', '-at_install')
|
|
class TestSaleOrder(SaleCommon):
|
|
|
|
def test_delivery_methods_match_order_company(self):
|
|
company_1 = self.env['res.company'].create({'name': 'Test Company 1'})
|
|
company_2 = self.env['res.company'].create({'name': 'Test Company 2'})
|
|
product_delivery_1 = self.env['product.product'].create(
|
|
{
|
|
'name': 'Delivery Product 1',
|
|
'type': 'service',
|
|
'company_id': company_1.id,
|
|
}
|
|
)
|
|
product_delivery_2 = self.env['product.product'].create(
|
|
{
|
|
'name': 'Delivery Product 2',
|
|
'type': 'service',
|
|
'company_id': company_2.id,
|
|
}
|
|
)
|
|
delivery_1 = self.env['delivery.carrier'].create(
|
|
{
|
|
'name': 'Delivery 1',
|
|
'delivery_type': 'fixed',
|
|
'product_id': product_delivery_1.id,
|
|
'is_published': True,
|
|
}
|
|
)
|
|
delivery_2 = self.env['delivery.carrier'].create(
|
|
{
|
|
'name': 'Delivery 2',
|
|
'delivery_type': 'fixed',
|
|
'product_id': product_delivery_2.id,
|
|
'is_published': True,
|
|
}
|
|
)
|
|
sale_order = self.env['sale.order'].create(
|
|
{
|
|
'partner_id': self.partner.id,
|
|
'company_id': company_1.id,
|
|
'order_line': [
|
|
Command.create(
|
|
{
|
|
'product_id': self.product.id,
|
|
}
|
|
)],
|
|
}
|
|
)
|
|
available_dms = sale_order._get_delivery_methods()
|
|
self.assertIn(delivery_1, available_dms)
|
|
self.assertNotIn(delivery_2, available_dms)
|