2018-01-16 06:58:15 +01:00
# -*- coding: utf-8 -*-
from datetime import timedelta
2018-01-16 11:34:37 +01:00
from flectra import fields
from flectra . addons . stock . tests . common2 import TestStockCommon
2018-01-16 06:58:15 +01:00
class TestPurchase ( TestStockCommon ) :
def _create_make_procurement ( self , product , product_qty , date_planned = False ) :
ProcurementGroup = self . env [ ' procurement.group ' ]
order_values = {
' warehouse_id ' : self . warehouse_1 ,
' date_planned ' : date_planned or fields . Datetime . to_string ( fields . datetime . now ( ) + timedelta ( days = 10 ) ) , # 10 days added to current date of procurement to get future schedule date and order date of purchase order.
' group_id ' : self . env [ ' procurement.group ' ] ,
}
return ProcurementGroup . run ( product , product_qty , self . uom_unit , self . warehouse_1 . lot_stock_id , product . name , ' / ' , order_values )
@classmethod
def setUpClass ( cls ) :
super ( TestPurchase , cls ) . setUpClass ( )
cls . route_buy = cls . warehouse_1 . buy_pull_id . route_id . id
cls . route_mto = cls . warehouse_1 . mto_pull_id . route_id . id
# Update product_1 with type, route and Delivery Lead Time
cls . product_1 . write ( {
' type ' : ' product ' ,
' route_ids ' : [ ( 6 , 0 , [ cls . route_buy , cls . route_mto ] ) ] ,
' seller_ids ' : [ ( 0 , 0 , { ' name ' : cls . partner_1 . id , ' delay ' : 5 } ) ] } )
# Update product_2 with type, route and Delivery Lead Time
cls . product_2 . write ( {
' type ' : ' product ' ,
' route_ids ' : [ ( 6 , 0 , [ cls . route_buy , cls . route_mto ] ) ] ,
' seller_ids ' : [ ( 0 , 0 , { ' name ' : cls . partner_1 . id , ' delay ' : 2 } ) ] } )