diff --git a/addons/purchase/__openerp__.py b/addons/purchase/__openerp__.py index e7557fd8ad5..f7b5952e696 100644 --- a/addons/purchase/__openerp__.py +++ b/addons/purchase/__openerp__.py @@ -65,9 +65,9 @@ Dashboard for purchase management that includes: 'test/process/purchase_from_picking.yml', 'test/process/procurement_buy.yml', 'test/process/merge_purchase_order.yml', + 'test/process/purchase_order_cancel.yml', 'test/process/purchase_report.yml', - 'test/purchase_order_cancel_draft.yml' - ], + ], 'demo': [ 'purchase_demo.xml', 'purchase_unit_test.xml', diff --git a/addons/purchase/test/process/purchase_order_cancel.yml b/addons/purchase/test/process/purchase_order_cancel.yml index 47bca231e69..279baddd86b 100644 --- a/addons/purchase/test/process/purchase_order_cancel.yml +++ b/addons/purchase/test/process/purchase_order_cancel.yml @@ -1,114 +1,25 @@ - - In order to test to Cancel purchase order from Approved State,I start by creating a new product 'Pen Drive1' + In order to test to Cancel purchase order from Different State,I start by cancel the previously created PO. - - !record {model: product.product, id: product_product_pendrive1}: - categ_id: 'product.product_category_3' - cost_method: standard - mes_type: fixed - name: Pen Drive - price_margin: 1.0 - procure_method: make_to_order - property_stock_inventory: stock.location_inventory - property_stock_procurement: stock.location_procurement - property_stock_production: stock.location_production - standard_price: 500.0 - supply_method: buy - type: product - uom_id: product.product_uom_unit - uom_po_id: product.product_uom_unit + Now I have to cancel previously created purchase order for product 'Side Panel'. - - I create first purchase order for Pen Drive1 where "invoice_method" is From Order. -- - !record {model: purchase.order, id: purchase_order_pendrive1}: - company_id: base.main_company - date_order: !eval time.strftime('%Y-%m-%d') - invoice_method: order - location_id: stock.stock_location_stock - order_line: - - date_planned: !eval time.strftime('%Y-%m-%d') - name: Pen Drive - price_unit: 500.0 - product_id: 'product_product_pendrive1' - product_qty: 10.0 - product_uom: product.product_uom_unit - partner_address_id: base.res_partner_address_7 - partner_id: base.res_partner_4 - pricelist_id: purchase.list0 -- - Initially purchase order is in the draft state. -- - !assert {model: purchase.order, id: purchase_order_pendrive1}: - - state == 'draft' -- - I confirm the purchase order for Pen Drive1. -- - !workflow {model: purchase.order, action: purchase_confirm, ref: purchase_order_pendrive1} -- - I check that the order which was initially in the draft state has transmit to confirm state. -- - !assert {model: purchase.order, id: purchase_order_pendrive1}: - - state == 'approved' -- - I have to first cancel Picking of Approved Purchase order . + I have to first cancel Picking of Purchase order . - !python {model: stock.picking}: | - search_ids=self.search(cr, uid, [('purchase_id', '=', ref("purchase_order_pendrive1"))]) + search_ids=self.search(cr, uid, [('purchase_id', '=', ref("purchase_order_po1"))]) self.action_cancel(cr, uid, search_ids) - - Now I have to cancel confirm purchase order for Pen Drive1. + Now I have to cancel purchase order for product 'Side Panel'. - !python {model: purchase.order}: | - self.action_cancel(cr, uid, [ref("purchase_order_pendrive1")]) + self.action_cancel(cr, uid, [ref("purchase_order_po1")]) - - I check that the order which was in approved state has transmit to cancel state. -- - !assert {model: purchase.order, id: purchase_order_pendrive1}: - - state == 'cancel' -- - Now again set purchase order for Pen Drive1 to draft state. + Now again set purchase order for product 'Side Panel' to draft state. - !python {model: purchase.order}: | - self.action_cancel_draft(cr, uid, [ref("purchase_order_pendrive1")]) + self.action_cancel_draft(cr, uid, [ref("purchase_order_po1")]) - - I check that the First purchase order is in draft state. + Initially purchase order is in the draft state. - - !assert {model: purchase.order, id: purchase_order_pendrive1}: + !assert {model: purchase.order, id: purchase_order_po1}: - state == 'draft' -- - I test for Copy and Delete Perchase order in Draft state. -- - !python {model: purchase.order}: | - copy_id = self.copy(cr, uid, ref("purchase_order_pendrive1")) - self.unlink(cr, uid, [copy_id]) -- - I create Second purchase order for Pen Drive1 where "invoice_method" is From Order. -- - !record {model: purchase.order, id: purchase_order_pendrive2}: - company_id: base.main_company - date_order: !eval time.strftime('%Y-%m-%d') - invoice_method: order - location_id: stock.stock_location_stock - order_line: - - date_planned: !eval time.strftime('%Y-%m-%d') - name: Pen Drive - price_unit: 500.0 - product_id: 'product_product_pendrive1' - product_qty: 10.0 - product_uom: product.product_uom_unit - partner_address_id: base.res_partner_address_7 - partner_id: base.res_partner_4 - pricelist_id: purchase.list0 -- - Initially Second purchase order is in the draft state. -- - !assert {model: purchase.order, id: purchase_order_pendrive2}: - - state == 'draft' -- - I have merged first and second purchase order which are in draft state, belong to the same supplier,have same stock location, same pricelist. -- - !python {model: purchase.order.group}: | - ids = [ref("purchase_order_pendrive1"),ref("purchase_order_pendrive2")] - self.fields_view_get(cr, uid, context={'active_ids': ids}) - self.merge_orders(cr, uid, [1], context={'active_ids': ids}) - -