87 lines
3.1 KiB
YAML
87 lines
3.1 KiB
YAML
-
|
|
In order to test account invoice I create a new supplier invoice
|
|
-
|
|
!record {model: account.invoice, id: account_invoice_supplier0}:
|
|
account_id: account.a_pay
|
|
address_contact_id: base.res_partner_address_3000
|
|
address_invoice_id: base.res_partner_address_3000
|
|
check_total: 3000.0
|
|
company_id: base.main_company
|
|
currency_id: base.EUR
|
|
invoice_line:
|
|
- account_id: account.a_expense
|
|
name: '[PC1] Basic PC'
|
|
price_unit: 300.0
|
|
product_id: product.product_product_pc1
|
|
quantity: 10.0
|
|
uos_id: product.product_uom_unit
|
|
journal_id: account.expenses_journal
|
|
partner_id: base.res_partner_desertic_hispafuentes
|
|
reference_type: none
|
|
type: in_invoice
|
|
-
|
|
I check that Initially supplier invoice state is "Draft"
|
|
-
|
|
!assert {model: account.invoice, id: account_invoice_supplier0}:
|
|
- state == 'draft'
|
|
-
|
|
I change the state of invoice to open by clicking Validate button
|
|
-
|
|
!workflow {model: account.invoice, action: invoice_open, ref: account_invoice_supplier0}
|
|
-
|
|
I check that the invoice state is now "Open"
|
|
-
|
|
!assert {model: account.invoice, id: account_invoice_supplier0}:
|
|
- state == 'open'
|
|
-
|
|
I make a partial payment of 2000 EUR
|
|
-
|
|
!record {model: account.invoice.pay, id: account_invoice_pay_firstpaymenttoaxelorforbasicpc0}:
|
|
amount: 2000.0
|
|
date: '2010-05-29'
|
|
journal_id: account.sales_journal
|
|
name: First Payment to Axelor for Basic PC
|
|
period_id: account.period_5
|
|
-
|
|
I make partial payment by clicking on Partial Payment button
|
|
-
|
|
!python {model: account.invoice.pay}: |
|
|
self.pay_and_reconcile(cr, uid, [ref("account_invoice_pay_firstpaymenttoaxelorforbasicpc0")],
|
|
{"lang": 'en_US', "active_model": "account.invoice", "tz": False, "record_id":
|
|
25, "active_ids": [ref("account_invoice_supplier0")], "type": "in_invoice", "active_id":
|
|
ref("account_invoice_supplier0"), })
|
|
-
|
|
I check that the invoice state is still "Open"
|
|
-
|
|
!assert {model: account.invoice, id: account_invoice_supplier0}:
|
|
- state == 'open'
|
|
-
|
|
I make final partial payment of 1000 EUR
|
|
-
|
|
!record {model: account.invoice.pay, id: account_invoice_pay_finalpaymenttoaxelorforbasicpc0}:
|
|
amount: 1000.0
|
|
date: '2010-06-17'
|
|
journal_id: account.sales_journal
|
|
name: Final Payment to Axelor for Basic PC
|
|
period_id: account.period_5
|
|
-
|
|
I make partial payment by clicking on Partial Payment button
|
|
-
|
|
!python {model: account.invoice.pay}: |
|
|
self.pay_and_reconcile(cr, uid, [ref("account_invoice_pay_finalpaymenttoaxelorforbasicpc0")],
|
|
{"lang": 'en_US', "active_model": "account.invoice", "tz": False, "record_id":
|
|
25, "active_ids": [ref("account_invoice_supplier0")], "type": "in_invoice", "active_id":
|
|
ref("account_invoice_supplier0"), })
|
|
|
|
-
|
|
I check that the invoice state is now "Done"
|
|
-
|
|
!assert {model: account.invoice, id: account_invoice_supplier0}:
|
|
- state == 'paid'
|
|
-
|
|
I check that an payment entry gets created in the account move line
|
|
-
|
|
!python {model: account.invoice}: |
|
|
acc_id=self.browse(cr, uid, ref("account_invoice_supplier0"))
|
|
assert(acc_id.move_id)
|