diff options
Diffstat (limited to 'addons/purchase_stock/tests/test_routes.py')
| -rw-r--r-- | addons/purchase_stock/tests/test_routes.py | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/addons/purchase_stock/tests/test_routes.py b/addons/purchase_stock/tests/test_routes.py new file mode 100644 index 00000000..7510011b --- /dev/null +++ b/addons/purchase_stock/tests/test_routes.py @@ -0,0 +1,53 @@ +from odoo.tests.common import TransactionCase, Form + + +class TestRoutes(TransactionCase): + + def test_allow_rule_creation_for_route_without_company(self): + self.env['res.config.settings'].write({ + 'group_stock_adv_location': True, + 'group_stock_multi_locations': True, + }) + + warehouse = self.env['stock.warehouse'].search([('company_id', '=', self.env.company.id)], limit=1) + + location_1 = self.env['stock.location'].create({ + 'name': 'loc1', + 'location_id': warehouse.id + }) + + location_2 = self.env['stock.location'].create({ + 'name': 'loc2', + 'location_id': warehouse.id + }) + + receipt_1 = self.env['stock.picking.type'].create({ + 'name': 'Receipts from loc1', + 'sequence_code': 'IN1', + 'code': 'incoming', + 'warehouse_id': warehouse.id, + 'default_location_dest_id': location_1.id, + }) + + receipt_2 = self.env['stock.picking.type'].create({ + 'name': 'Receipts from loc2', + 'sequence_code': 'IN2', + 'code': 'incoming', + 'warehouse_id': warehouse.id, + 'default_location_dest_id': location_2.id, + }) + + route = self.env['stock.location.route'].create({ + 'name': 'Buy', + 'company_id': False + }) + + with Form(route) as r: + with r.rule_ids.new() as line: + line.name = 'first rule' + line.action = 'buy' + line.picking_type_id = receipt_1 + with r.rule_ids.new() as line: + line.name = 'second rule' + line.action = 'buy' + line.picking_type_id = receipt_2 |
