55 lines
2.2 KiB
Python
55 lines
2.2 KiB
Python
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from odoo.addons.account.tests.common import AccountTestInvoicingHttpCommon
|
|
|
|
|
|
class TestPosQrCommon(AccountTestInvoicingHttpCommon):
|
|
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
super().setUpClass()
|
|
cls.company_data['company'].qr_code = True
|
|
|
|
cls.env['product.combo.item'].search([]).unlink()
|
|
cls.env['product.product'].search([]).write({'available_in_pos': False})
|
|
|
|
cls.product_1 = cls.env['product.product'].create({
|
|
'name': 'Hand Bag',
|
|
'available_in_pos': True,
|
|
'list_price': 4.8,
|
|
'taxes_id': False,
|
|
})
|
|
|
|
# Create user.
|
|
cls.pos_user = cls.env['res.users'].create({
|
|
'name': 'A simple PoS man!',
|
|
'login': 'pos_user',
|
|
'password': 'pos_user',
|
|
'groups_id': [
|
|
(4, cls.env.ref('base.group_user').id),
|
|
(4, cls.env.ref('point_of_sale.group_pos_user').id),
|
|
(4, cls.env.ref('account.group_account_invoice').id),
|
|
],
|
|
})
|
|
|
|
cls.company = cls.company_data['company']
|
|
cls.pos_receivable_bank = cls.copy_account(cls.company.account_default_pos_receivable_account_id, {'name': 'POS Receivable Bank'})
|
|
cls.outstanding_bank = cls.copy_account(cls.inbound_payment_method_line.payment_account_id, {'name': 'Outstanding Bank'})
|
|
cls.bank_pm = cls.env['pos.payment.method'].create({
|
|
'name': 'Bank',
|
|
'journal_id': cls.company_data['default_journal_bank'].id,
|
|
'receivable_account_id': cls.pos_receivable_bank.id,
|
|
'outstanding_account_id': cls.outstanding_bank.id,
|
|
'company_id': cls.company.id,
|
|
})
|
|
|
|
cls.main_pos_config = cls.env['pos.config'].create({
|
|
'name': 'Shop',
|
|
'module_pos_restaurant': False,
|
|
'journal_id': cls.company_data['default_journal_sale'].id,
|
|
# Make sure there is one extra payment method for the tour tests to work.
|
|
# Because if the tour only use the qr payment method, the total amount won't be displayed,
|
|
# causing the tour test to fail.
|
|
'payment_method_ids': [(4, cls.bank_pm.id)]
|
|
})
|