diff --git a/addons/purchase_double_validation/test/purchase_double_validation_demo.yml b/addons/purchase_double_validation/test/purchase_double_validation_demo.yml new file mode 100644 index 00000000000..7e91f3fc03a --- /dev/null +++ b/addons/purchase_double_validation/test/purchase_double_validation_demo.yml @@ -0,0 +1,12 @@ +- + !record {model: purchase.order, id: order_purchase11}: + partner_id: base.res_partner_desertic_hispafuentes + order_line: + - product_id: product.product_product_pc4 + product_qty: 10 +- + !record {model: purchase.order, id: order_purchase12}: + partner_id: base.res_partner_vickingdirect0 + order_line: + - product_id: product.product_product_hdd2 + product_qty: 10 \ No newline at end of file diff --git a/addons/purchase_double_validation/test/purchase_double_validation_test.yml b/addons/purchase_double_validation/test/purchase_double_validation_test.yml new file mode 100755 index 00000000000..cb4841e7fa8 --- /dev/null +++ b/addons/purchase_double_validation/test/purchase_double_validation_test.yml @@ -0,0 +1,51 @@ +- + I Create new limit amount from Configure Limit Amount for Purchase wizard. +- + !record {model: purchase.double.validation.installer, id: purchase_double_validation_installer_1}: + limit_amount: 3000 +- + I set the Limit Amount. +- + !python {model: purchase.double.validation.installer}: | + self.execute(cr, uid, [ref("purchase_double_validation_installer_1")]) +- + I Test for purchase double validation in which Total > = Limit Amount. +- + !python {model: purchase.order}: | + installer_amount = self.pool.get('purchase.double.validation.installer').browse(cr, uid, ref("purchase_double_validation_installer_1")) + purchase_order = self.browse(cr, uid, ref("order_purchase11")) + assert purchase_order.amount_total >= installer_amount.limit_amount ,"Total is Less then the Limit Amount" +- + In order to test the flow, I confirmed the purchase order. +- + !workflow {model: purchase.order, action: purchase_confirm, ref: order_purchase11} +- + I check that the order which was initially in the draft state has transmit to confirm state for double validation. +- + !assert {model: purchase.order, id: order_purchase11, severity: error, string: Purchase Order should be in Confirmed state.}: + - state == 'confirmed' +- + I Approved the purchase order. +- + !workflow {model: purchase.order, action: purchase_approve, ref: order_purchase11} +- + I check that the order which was initially in the confirmed state has transmit to approved state. +- + !assert {model: purchase.order, id: order_purchase11, severity: error, string: Purchase Order should be in Approved state.}: + - state == 'approved' +- + Test for purchase double validation in which Total < = Limit Amount. +- + !python {model: purchase.order}: | + installer_amount = self.pool.get('purchase.double.validation.installer').browse(cr, uid, ref("purchase_double_validation_installer_1")) + purchase_order = self.browse(cr, uid, ref("order_purchase12")) + assert purchase_order.amount_total <= installer_amount.limit_amount ,"Total is Greater then the Limit Amount" +- + I confirmed the purchase order. +- + !workflow {model: purchase.order, action: purchase_confirm, ref: order_purchase12} +- + I check that the order is in approved state. +- + !assert {model: purchase.order, id: order_purchase12, severity: error, string: Purchase Order should be in Approved state.}: + - state == 'approved' \ No newline at end of file