details: https://code.tryton.org/tryton/commit/5555b9af7f90
branch: default
user: Cédric Krier <[email protected]>
date: Tue Feb 10 17:08:34 2026 +0100
description:
Use internal shipment to create product needs in stock supply test
scenario
diffstat:
modules/production_routing/tests/scenario_stock_supply_production.rst
| 12 +++-
modules/stock_supply/tests/scenario_stock_internal_supply.rst
| 12 +++-
modules/stock_supply_production/tests/scenario_stock_supply_production.rst
| 25 ++++++---
modules/stock_supply_production/tests/scenario_stock_supply_production_bom.rst
| 11 ++-
4 files changed, 40 insertions(+), 20 deletions(-)
diffs (152 lines):
diff -r 0a3674b29c3c -r 5555b9af7f90
modules/production_routing/tests/scenario_stock_supply_production.rst
--- a/modules/production_routing/tests/scenario_stock_supply_production.rst
Mon Feb 09 21:46:16 2026 +0100
+++ b/modules/production_routing/tests/scenario_stock_supply_production.rst
Tue Feb 10 17:08:34 2026 +0100
@@ -15,6 +15,8 @@
>>> config = activate_modules(
... ['stock_supply_production', 'production_routing'], create_company)
+ >>> Shipment = Model.get('stock.shipment.internal')
+
Create product::
>>> ProductUom = Model.get('product.uom')
@@ -51,14 +53,16 @@
Create a need for product::
- >>> Move = Model.get('stock.move')
- >>> move = Move()
+ >>> shipment = Shipment(from_location=storage_loc, to_location=lost_loc)
+ >>> move = shipment.moves.new()
>>> move.product = product
>>> move.quantity = 1
>>> move.from_location = storage_loc
>>> move.to_location = lost_loc
- >>> move.click('do')
- >>> move.state
+ >>> shipment.click('wait')
+ >>> shipment.click('assign_force')
+ >>> shipment.click('do')
+ >>> shipment.state
'done'
Create production request::
diff -r 0a3674b29c3c -r 5555b9af7f90
modules/stock_supply/tests/scenario_stock_internal_supply.rst
--- a/modules/stock_supply/tests/scenario_stock_internal_supply.rst Mon Feb
09 21:46:16 2026 +0100
+++ b/modules/stock_supply/tests/scenario_stock_internal_supply.rst Tue Feb
10 17:08:34 2026 +0100
@@ -16,6 +16,8 @@
>>> config = activate_modules('stock_supply', create_company)
+ >>> Shipment = Model.get('stock.shipment.internal')
+
Create product::
>>> ProductUom = Model.get('product.uom')
@@ -103,14 +105,16 @@
Create negative quantity in Second Storage::
- >>> Move = Model.get('stock.move')
- >>> move = Move()
+ >>> shipment = Shipment(from_location=sec_storage_loc,
to_location=lost_loc)
+ >>> move = shipment.moves.new()
>>> move.product = product
>>> move.quantity = 10
>>> move.from_location = sec_storage_loc
>>> move.to_location = lost_loc
- >>> move.click('do')
- >>> move.state
+ >>> shipment.click('wait')
+ >>> shipment.click('assign_force')
+ >>> shipment.click('do')
+ >>> shipment.state
'done'
Execute internal supply::
diff -r 0a3674b29c3c -r 5555b9af7f90
modules/stock_supply_production/tests/scenario_stock_supply_production.rst
---
a/modules/stock_supply_production/tests/scenario_stock_supply_production.rst
Mon Feb 09 21:46:16 2026 +0100
+++
b/modules/stock_supply_production/tests/scenario_stock_supply_production.rst
Tue Feb 10 17:08:34 2026 +0100
@@ -18,6 +18,7 @@
>>> config = activate_modules('stock_supply_production', create_company)
+ >>> Shipment = Model.get('stock.shipment.internal')
>>> Warning = Model.get('res.user.warning')
Create product::
@@ -51,23 +52,31 @@
Create needs for product::
- >>> Move = Model.get('stock.move')
- >>> move = Move()
+ >>> shipment = Shipment(from_location=storage_loc, to_location=lost_loc)
+ >>> move = shipment.moves.new()
>>> move.product = product
>>> move.quantity = 1
>>> move.from_location = storage_loc
>>> move.to_location = lost_loc
- >>> move.click('do')
- >>> move.state
+ >>> shipment.click('wait')
+ >>> shipment.click('assign_force')
+ >>> shipment.click('do')
+ >>> shipment.state
'done'
- >>> move, = move.duplicate(
- ... default={'effective_date': today + dt.timedelta(days=10)})
+ >>> shipment, = shipment.duplicate()
+ >>> shipment.effective_date = today + dt.timedelta(days=10)
+ >>> move, = shipment.moves
+ >>> move.effective_date = shipment.effective_date
+ >>> shipment.click('wait')
+ >>> shipment.click('assign_force')
>>> try:
- ... move.click('do')
+ ... shipment.click('do')
... except MoveFutureWarning as warning:
... Warning(user=config.user, name=warning.name).save()
- >>> move.click('do')
+ >>> shipment.click('do')
+ >>> shipment.state
+ 'done'
There is no production request::
diff -r 0a3674b29c3c -r 5555b9af7f90
modules/stock_supply_production/tests/scenario_stock_supply_production_bom.rst
---
a/modules/stock_supply_production/tests/scenario_stock_supply_production_bom.rst
Mon Feb 09 21:46:16 2026 +0100
+++
b/modules/stock_supply_production/tests/scenario_stock_supply_production_bom.rst
Tue Feb 10 17:08:34 2026 +0100
@@ -15,10 +15,10 @@
>>> BoM = Model.get('production.bom')
>>> Location = Model.get('stock.location')
- >>> Move = Model.get('stock.move')
>>> ProductTemplate = Model.get('product.template')
>>> ProductUom = Model.get('product.uom')
>>> Production = Model.get('production')
+ >>> Shipment = Model.get('stock.shipment.internal')
Create product with a BoM::
@@ -55,13 +55,16 @@
Create needs for product::
- >>> move = Move()
+ >>> shipment = Shipment(from_location=storage_loc, to_location=lost_loc)
+ >>> move = shipment.moves.new()
>>> move.product = product
>>> move.quantity = 2
>>> move.from_location = storage_loc
>>> move.to_location = lost_loc
- >>> move.click('do')
- >>> move.state
+ >>> shipment.click('wait')
+ >>> shipment.click('assign_force')
+ >>> shipment.click('do')
+ >>> shipment.state
'done'
Create production request::