~unifield-team/unifield-wm/us-826

« back to all changes in this revision

Viewing changes to sourcing/test/sourcing.yml

  • Committer: jf
  • Date: 2011-03-25 10:24:33 UTC
  • Revision ID: jf@tempo4-20110325102433-6sffw5hsj00pom90
[IMP] Added msf module list

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
    
2
 
3
 
  Creating a res.partner record
4
 
5
 
  !record {model: res.partner, id: res_partner_a0}:
6
 
    credit_limit: 0.0
7
 
    debit_limit: 0.0
8
 
    name: A
9
 
    supplier: true
10
 
    customer_lt: 1
11
 
    procurement_lt: 2
12
 
    transport_by_air_lt: 3
13
 
    air_sequence: 1
14
 
    transport_by_sea_lt: 4
15
 
    sea_sequence: 2
16
 
    transport_by_road_lt: 5
17
 
    road_sequence: 3
18
 
    
19
 
20
 
  Creating a res.partner.address record
21
 
22
 
  !record {model: res.partner.address, id: res_partner_address_0}:
23
 
    partner_id: res_partner_a0
24
 
    street: A
25
 
    
26
 
27
 
  Creating a res.partner record
28
 
29
 
  !record {model: res.partner, id: res_partner_b0}:
30
 
    credit_limit: 0.0
31
 
    debit_limit: 0.0
32
 
    name: B
33
 
    supplier: true
34
 
    
35
 
    
36
 
37
 
  Creating a res.partner.address record
38
 
39
 
  !record {model: res.partner.address, id: res_partner_address_1}:
40
 
    partner_id: res_partner_b0
41
 
    street: B
42
 
    
43
 
-
44
 
  I create product template .
45
 
-
46
 
  !record {model: product.template, id: product_template_p0}:
47
 
    categ_id: product.cat0
48
 
    cost_method: standard
49
 
    mes_type: fixed
50
 
    name: P
51
 
    procure_method: make_to_stock
52
 
    standard_price: 160.0
53
 
    supply_method: buy
54
 
    type: product
55
 
    uom_id: product.product_uom_unit
56
 
    uom_po_id: product.product_uom_unit
57
 
    
58
 
59
 
  Creating a product.product record
60
 
61
 
  !record {model: product.product, id: product_product_p0}:
62
 
    
63
 
    standard_price: 1.0
64
 
    valuation: manual_periodic
65
 
    volume: 0.0
66
 
    warranty: 0.0
67
 
    weight: 0.0
68
 
    weight_net: 0.0
69
 
    product_tmpl_id: product_template_p0
70
 
    
71
 
    
72
 
73
 
  Creating a product.supplierinfo record
74
 
75
 
  !record {model: product.supplierinfo, id: product_supplierinfo_0}:
76
 
    delay: 1
77
 
    min_qty: 0.0
78
 
    name: res_partner_a0
79
 
    product_id: product_template_p0
80
 
    
81
 
    
82
 
83
 
  Creating a product.supplierinfo record
84
 
85
 
  !record {model: product.supplierinfo, id: product_supplierinfo_1}:
86
 
    delay: 1
87
 
    min_qty: 0.0
88
 
    name: res_partner_b0
89
 
    product_id: product_template_p0
90
 
    sequence: 10
91
 
    
92
 
    
93
 
94
 
  Creating a sale.order record
95
 
96
 
  !record {model: sale.order, id: sale_order_so0}:
97
 
    amount_tax: 0.0
98
 
    amount_total: 1.0
99
 
    amount_untaxed: 1.0
100
 
    company_id: base.main_company
101
 
    date_order: '2011-04-13'
102
 
    invoice_quantity: order
103
 
    order_policy: manual
104
 
    partner_id: res_partner_a0
105
 
    partner_invoice_id: res_partner_address_0
106
 
    partner_order_id: res_partner_address_0
107
 
    partner_shipping_id: res_partner_address_0
108
 
    picking_policy: direct
109
 
    pricelist_id: product.list0
110
 
    shop_id: sale.shop
111
 
    priority: normal
112
 
    categ: medical
113
 
    
114
 
    
115
 
116
 
  Creating a sale.order.line record
117
 
118
 
  !record {model: sale.order.line, id: sale_order_line_p0}:
119
 
    company_id: base.main_company
120
 
    delay: 7.0
121
 
    name: P
122
 
    order_id: sale_order_so0
123
 
    order_partner_id: res_partner_a0
124
 
    price_unit: 1.0
125
 
    product_id: product_product_p0
126
 
    product_uom: product.product_uom_unit
127
 
    product_uom_qty: 1.0
128
 
    salesman_id: base.user_admin
129
 
    state: draft
130
 
    th_weight: 0.0
131
 
    type: make_to_stock
132
 
    
133
 
-
134
 
 
135
 
  I check the sourcing line
136
 
 
137
 
-
138
 
  !python {model: sale.order.line}: |
139
 
    sol = self.browse(cr, uid, ref("sale_order_line_p0"))
140
 
    
141
 
    count = 0
142
 
    
143
 
    for sourcing in sol.sourcing_line_ids:
144
 
      count = count + 1
145
 
      assert sourcing.sale_order_id.id == ref("sale_order_so0"), 'sourcing line, sale order id is wrong (%i, %i)'%(sourcing.sale_order_id, ref("sale_order_so0"))
146
 
      assert int(sourcing.sale_order_line_id) == ref("sale_order_line_p0"), 'sourcing line, sale order line id is wrong (%i, %i)'%(sourcing.sale_order_line_id, ref("sale_order_line_p0"))
147
 
      assert sourcing.type == 'make_to_stock', 'sourcing type wrong'
148
 
      assert sourcing.state == 'draft', 'sourcing state wrong'
149
 
      assert sourcing.state == sourcing.sale_order_line_state, 'states wrong'
150
 
      assert not sourcing.supplier.id, 'make_to_stock: sourcing has a supplier !'
151
 
      
152
 
      sourcing.write({'type':'make_to_order', 'supplier':ref("res_partner_b0")})
153
 
      
154
 
      assert int(sol.supplier) == ref("res_partner_b0"), 'sol supplier is wrong after update of sourcing line (%i, %i)'%(sol.supplier, ref("product_supplierinfo_1"))
155
 
      assert sol.type == 'make_to_order', 'sol type is wrong after update of sourcing line (%s, %s)'%(sol.type, 'make_to_order')
156
 
      
157
 
    assert count == 1, 'number of sourcing line wrong (%i)'%(count)
158
 
    
159
 
    import netsvc
160
 
    wf_service = netsvc.LocalService("workflow")
161
 
    wf_service.trg_validate(uid, 'sale.order', ref("sale_order_so0"), 'order_confirm', cr)
162
 
    
163
 
    self.pool.get('procurement.order').run_scheduler(cr, uid)
164
 
    
165
 
    ids = self.pool.get('purchase.order').search(cr, uid, [('origin', '=', sol.order_id.name)])
166
 
    
167
 
    count = 0
168
 
    for po in self.pool.get('purchase.order').browse(cr, uid, ids):
169
 
      if po.partner_id.id == ref("res_partner_b0"):
170
 
        count = count + 1
171
 
    
172
 
    assert count == 1, 'purchase order number does not match (%i, %i)'%(len(sol.order_id.order_line), count)
173
 
    
174
 
    #assert sol.procurement_id.purchase_id.partner_id.id == ref("res_partner_b0"), 'partner is wrong for purchase order (%i, %i)'%(sol.procurement_id.purchase_id.partner_id.id, ref("res_partner_b0"))
175