61 lines
2.0 KiB
YAML
61 lines
2.0 KiB
YAML
-
|
|
I create a draft Sale Order with 2 lines but 1 canceled in order to check if the canceled lines are not considered in the logic
|
|
-
|
|
!record {model: sale.order, id: sale_order_cl_2}:
|
|
partner_id: base.res_partner_15
|
|
partner_invoice_id: base.res_partner_address_25
|
|
partner_shipping_id: base.res_partner_address_25
|
|
pricelist_id: product.list0
|
|
order_policy: manual
|
|
-
|
|
!record {model: sale.order.line, id: sale_order_cl_2_line_1}:
|
|
order_id: sale_order_cl_2
|
|
product_id: product.product_product_27
|
|
product_uom_qty: 1
|
|
product_uom: 1
|
|
price_unit: 3645
|
|
name: 'Laptop Customized'
|
|
-
|
|
!record {model: sale.order.line, id: sale_order_cl_2_line_2}:
|
|
order_id: sale_order_cl_2
|
|
product_id: product.product_product_12
|
|
product_uom_qty: 1
|
|
product_uom: 1
|
|
price_unit: 12.50
|
|
name: 'Mouse, Wireless'
|
|
-
|
|
I cancel the first line
|
|
-
|
|
!python {model: sale.order.line, id: sale_order_cl_2_line_1}: |
|
|
self.button_cancel()
|
|
-
|
|
I confirm the sale order
|
|
-
|
|
!workflow {model: sale.order, action: order_confirm, ref: sale_order_cl_2}
|
|
-
|
|
Invoice the whole sale order
|
|
-
|
|
!python {model: sale.advance.payment.inv}: |
|
|
ctx = context.copy()
|
|
ctx.update({"active_model": 'sale.order',
|
|
"active_ids": [ref("sale_order_cl_2")],
|
|
"active_id":ref("sale_order_cl_2")})
|
|
pay_id = self.create(cr, uid, {'advance_payment_method': 'all'})
|
|
self.create_invoices(cr, uid, [pay_id], context=ctx)
|
|
-
|
|
I check the invoice
|
|
-
|
|
!python {model: sale.order, id: sale_order_cl_2}: |
|
|
invoice = self.invoice_ids
|
|
assert len(invoice.invoice_line) == 1, "Only 1 line should be invoiced because the other one is canceled, got %d" % len(invoice.invoice_line)
|
|
-
|
|
I set the sale to done
|
|
-
|
|
!python {model: sale.order, id: sale_order_cl_2}: |
|
|
self.action_done()
|
|
-
|
|
And check if the canceled line is still canceled
|
|
-
|
|
!assert {model: sale.order.line, id: sale_order_cl_2_line_1, string: The canceled line should still be canceled}:
|
|
- state == 'cancel'
|