@@ -10,75 +10,81 @@ class CarrierLabelCase(TransactionCase):
10
10
to return the carrier you want to test"""
11
11
12
12
@classmethod
13
- def setUpClass (self ):
14
- super ().setUpClass (self )
15
- self ._create_order_picking ()
13
+ def setUpClass (cls ):
14
+ super ().setUpClass ()
15
+ cls ._create_order_picking ()
16
16
17
17
@property
18
18
def transfer_in_setup (self ):
19
19
return True
20
20
21
- def _create_order_picking (self ):
21
+ @classmethod
22
+ def _create_order_picking (cls ):
22
23
"""Create a sale order and deliver the picking"""
23
- self .order = self .env ["sale.order" ].create (self ._sale_order_data ())
24
- for product in self .order .mapped ("order_line.product_id" ):
25
- self .env ["stock.quant" ].with_context (inventory_mode = True ).create (
24
+ cls .order = cls .env ["sale.order" ].create (cls ._sale_order_data ())
25
+ for product in cls .order .mapped ("order_line.product_id" ):
26
+ cls .env ["stock.quant" ].with_context (inventory_mode = True ).create (
26
27
{
27
28
"product_id" : product .id ,
28
- "location_id" : self .order .warehouse_id .lot_stock_id .id ,
29
+ "location_id" : cls .order .warehouse_id .lot_stock_id .id ,
29
30
"inventory_quantity" : sum (
30
- self .order .mapped ("order_line.product_uom_qty" )
31
+ cls .order .mapped ("order_line.product_uom_qty" )
31
32
),
32
33
}
33
34
)._apply_inventory ()
34
- self .order .action_confirm ()
35
- self .picking = self .order .picking_ids
36
- self .picking .write (self ._picking_data ())
37
- if self .transfer_in_setup :
38
- self ._transfer_order_picking ()
39
-
40
- def _transfer_order_picking (self ):
41
- self .env ["stock.immediate.transfer" ].create (
42
- {"pick_ids" : [(6 , 0 , self .picking .ids )]}
35
+ cls .order .action_confirm ()
36
+ cls .picking = cls .order .picking_ids
37
+ cls .picking .write (cls ._picking_data ())
38
+ if cls .transfer_in_setup :
39
+ cls ._transfer_order_picking ()
40
+
41
+ @classmethod
42
+ def _transfer_order_picking (cls ):
43
+ cls .env ["stock.immediate.transfer" ].create (
44
+ {"pick_ids" : [(6 , 0 , cls .picking .ids )]}
43
45
).process ()
44
46
45
- def _get_carrier (self ):
47
+ @classmethod
48
+ def _get_carrier (cls ):
46
49
"""Return the carrier to test"""
47
50
raise NotImplementedError ()
48
51
49
- def _sale_order_data (self ):
52
+ @classmethod
53
+ def _sale_order_data (cls ):
50
54
"""Return a values dict to create a sale order"""
51
55
return {
52
- "partner_id" : self .env ["res.partner" ].create (self ._partner_data ()).id ,
53
- "order_line" : [(0 , 0 , data ) for data in self ._order_line_data ()],
54
- "carrier_id" : self ._get_carrier ().id ,
56
+ "partner_id" : cls .env ["res.partner" ].create (cls ._partner_data ()).id ,
57
+ "order_line" : [(0 , 0 , data ) for data in cls ._order_line_data ()],
58
+ "carrier_id" : cls ._get_carrier ().id ,
55
59
}
56
60
57
- def _partner_data (self ):
61
+ @classmethod
62
+ def _partner_data (cls ):
58
63
"""Return a values dict to create a partner"""
59
64
return {
60
65
"name" : "Carrier label test customer" ,
61
66
}
62
67
63
- def _order_line_data (self ):
68
+ @classmethod
69
+ def _order_line_data (cls ):
64
70
"""Return a list of value dicts to create order lines"""
65
71
return [
66
72
{
67
- "product_id" : self .env ["product.product" ]
68
- .create (self ._product_data ())
69
- .id ,
73
+ "product_id" : cls .env ["product.product" ].create (cls ._product_data ()).id ,
70
74
"product_uom_qty" : 1 ,
71
75
}
72
76
]
73
77
74
- def _product_data (self ):
78
+ @classmethod
79
+ def _product_data (cls ):
75
80
"""Return a values dict to create a product"""
76
81
return {
77
82
"name" : "Carrier test product" ,
78
83
"type" : "product" ,
79
84
}
80
85
81
- def _picking_data (self ):
86
+ @classmethod
87
+ def _picking_data (cls ):
82
88
"""Return a values dict to be written to the picking in order to set
83
89
carrier options"""
84
90
return {}
0 commit comments