odoo/addons/delivery/test/delivery_cost.yml

94 lines
3.4 KiB
YAML

-
In order to test Carrier Cost,
-
Create sale order with Normal Delivery Charges
-
!record {model: sale.order, id: sale_normal_delivery_charges}:
partner_id: base.res_partner_18
partner_invoice_id: base.res_partner_18
partner_shipping_id: base.res_partner_18
pricelist_id: product.list0
order_policy: 'picking'
order_line:
- name: 'PC Assamble + 2GB RAM'
product_id: product.product_product_4
product_uom_qty: 1
product_uos_qty: 1
product_uom: product.product_uom_unit
price_unit: 750.00
carrier_id: normal_delivery_carrier
-
I add delivery cost in Sale order.
-
!python {model: sale.order}: |
self.delivery_set(cr, uid, [ref("sale_normal_delivery_charges")], context=context)
-
I check sale order after added delivery cost.
-
!python {model: sale.order.line}: |
line_ids = self.search(cr, uid, [('order_id','=', ref('sale_normal_delivery_charges')), ('product_id','=', ref('product_product_delivery'))])
assert len(line_ids), "Delivery cost is not Added"
line_data = self.browse(cr ,uid ,line_ids[0] ,context)
assert line_data.price_subtotal == 10, "Delivey cost is not correspond."
-
I confirm the sale order.
-
!workflow {model: sale.order, action: order_confirm, ref: sale_normal_delivery_charges}
-
I create Invoice from shipment.
-
!python {model: stock.invoice.onshipping}: |
sale = self.pool.get('sale.order')
sale_order = sale.browse(cr, uid, ref("sale_normal_delivery_charges"))
ship_ids = [x.id for x in sale_order.picking_ids]
wiz_id = self.create(cr, uid, {'journal_id': ref('account.sales_journal')},
{'active_ids': ship_ids, 'active_model': 'stock.picking'})
self.create_invoice(cr, uid, [wiz_id], {"active_ids": ship_ids, "active_id": ship_ids[0]})
-
Create one more sale order with Free Delivery Charges
-
!record {model: sale.order, id: sale_free_delivery_charges}:
partner_id: base.res_partner_7
partner_invoice_id: base.res_partner_address_13
partner_shipping_id: base.res_partner_address_13
pricelist_id: product.list0
order_policy: 'manual'
order_line:
- name: 'Service on demand'
product_id: product.product_product_consultant
product_uom_qty: 24
product_uos_qty: 24
product_uom: product.product_uom_hour
price_unit: 75.00
order_line:
- name: 'On Site Assistance'
product_id: product.product_product_2
product_uom_qty: 30
product_uos_qty: 30
product_uom: product.product_uom_hour
price_unit: 38.25
carrier_id: free_delivery_carrier
-
I add free delivery cost in Sale order.
-
!python {model: sale.order}: |
self.delivery_set(cr, uid, [ref("sale_free_delivery_charges")], context=context)
-
I check sale order after added delivery cost.
-
!python {model: sale.order.line}: |
line_ids = self.search(cr, uid, [('order_id','=', ref('sale_free_delivery_charges')), ('product_id','=', ref('product_product_delivery'))])
assert len(line_ids), "Delivery cost is not Added"
line_data = self.browse(cr ,uid ,line_ids[0] ,context)
assert line_data.price_subtotal == 0, "Delivey cost is not correspond."
-
I set default delivery policy.
-
!record {model: sale.config.settings, id: default_delivery_policy}:
{}
-
!python {model: sale.config.settings}: |
self.execute(cr, uid, [ref('default_delivery_policy')], context=context)