88 lines
2.7 KiB
YAML
88 lines
2.7 KiB
YAML
-
|
|
In order to test account voucher i will create an invoice and pay it through account voucher.
|
|
-
|
|
I create a new Partner
|
|
-
|
|
!record {model: res.partner, id: res_partner_micropc0}:
|
|
address:
|
|
- country_id: base.be
|
|
name: Jenifer
|
|
street: 69 rue de Chimay
|
|
type: default
|
|
zip: '5478'
|
|
category_id:
|
|
- base.res_partner_category_8
|
|
credit_limit: 0.0
|
|
name: Micro PC
|
|
property_account_payable: account.a_pay
|
|
property_account_receivable: account.a_recv
|
|
|
|
-
|
|
Creat an invoice for the partner
|
|
-
|
|
!record {model: account.invoice, id: account_invoice_0}:
|
|
account_id: account.a_recv
|
|
address_contact_id: base.res_partner_address_7
|
|
address_invoice_id: base.res_partner_address_7
|
|
company_id: base.main_company
|
|
currency_id: base.EUR
|
|
invoice_line:
|
|
- account_id: account.a_sale
|
|
name: '[PC1] Basic PC'
|
|
price_unit: 450.0
|
|
quantity: 1.0
|
|
product_id: product.product_product_pc1
|
|
uos_id: product.product_uom_unit
|
|
journal_id: account.sales_journal
|
|
partner_id: res_partner_micropc0
|
|
|
|
-
|
|
I check that the customer invoice is in draft state
|
|
-
|
|
!assert {model: account.invoice, id: account_invoice_0}:
|
|
- state == 'draft'
|
|
|
|
-
|
|
I make the invoice in Open state
|
|
-
|
|
!workflow {model: account.invoice, action: invoice_open, ref: account_invoice_0}
|
|
|
|
-
|
|
I check that a payment entry gets created in the account.move.line
|
|
-
|
|
!python {model: account.invoice}: |
|
|
acc_id=self.browse(cr, uid, ref("account_invoice_0"))
|
|
assert(acc_id.move_id)
|
|
|
|
-
|
|
I will create and post an account voucher for the partner.
|
|
-
|
|
!python {model: account.voucher}: |
|
|
import netsvc
|
|
vals = {}
|
|
journal_id = self.default_get(cr, uid, ['journal_id']).get('journal_id',None)
|
|
res = self.onchange_partner_id(cr, uid, [], ref("res_partner_micropc0"), journal_id, price=0.0, ttype='receipt')
|
|
vals = {
|
|
'account_id': ref('account.cash'),
|
|
'amount': 450.0,
|
|
'company_id': ref('base.main_company'),
|
|
'currency_id': ref('base.EUR'),
|
|
'journal_id': ref('account.bank_journal'),
|
|
'partner_id': ref('res_partner_micropc0'),
|
|
'period_id': ref('account.period_8'),
|
|
'type': 'receipt',
|
|
}
|
|
res['value']['line_cr_ids'][0]['amount'] = 450.0
|
|
vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']]
|
|
id = self.create(cr, uid, vals)
|
|
voucher_id = self.browse(cr, uid, id)
|
|
assert (voucher_id.state=='draft'), "Voucher is not in draft state"
|
|
wf_service = netsvc.LocalService("workflow")
|
|
wf_service.trg_validate(uid, 'account.voucher', voucher_id.id, 'proforma_voucher', cr)
|
|
|
|
-
|
|
Finally i will Confirm the state of the invoice is paid
|
|
-
|
|
!assert {model: account.invoice, id: account_invoice_0}:
|
|
- state == 'paid'
|