From e43290e25f6876d3f8c892797843afa73aedda8a Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Fri, 29 May 2015 08:46:07 +0200 Subject: [PATCH] [IMP] make test work with and without demo data --- .../tests/test_save_file.py | 37 ++++++++++++------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/account_bank_statement_import_save_file/tests/test_save_file.py b/account_bank_statement_import_save_file/tests/test_save_file.py index 8c3f341..dca847c 100644 --- a/account_bank_statement_import_save_file/tests/test_save_file.py +++ b/account_bank_statement_import_save_file/tests/test_save_file.py @@ -19,15 +19,21 @@ # ############################################################################## import base64 -from openerp import models +from openerp import api, models from openerp.tests.common import TransactionCase +acc_number = 'BE1234567890' + + class HelloWorldParser(models.TransientModel): _inherit = 'account.bank.statement.import' - def _parse_file(self, cr, uid, data_file, context=None): - return 'EUR', 'BE1234567890', [{ + @api.model + def _parse_file(self, data_file): + return [{ + 'currency_code': 'EUR', + 'account_number': acc_number, 'name': '000000123', 'date': '2013-06-26', 'transactions': [{ @@ -42,16 +48,21 @@ class HelloWorldParser(models.TransientModel): class TestSaveFile(TransactionCase): def test_SaveFile(self): HelloWorldParser._build_model(self.registry, self.cr) - testmodel = self.env['account.bank.statement.import'] - testmodel._prepare_setup() - testmodel._setup_base(False) - testmodel._setup_fields() - testmodel._setup_complete() - testmodel._auto_init() - action = self.env['account.bank.statement.import']\ - .with_context( - journal_id=self.env['account.journal'] - .search([('currency.name', '=', 'EUR')]).ids[0])\ + import_wizard = self.env['account.bank.statement.import'] + import_wizard._prepare_setup() + import_wizard._setup_base(False) + import_wizard._setup_fields() + import_wizard._setup_complete() + import_wizard._auto_init() + journal_id = self.env['res.partner.bank'].search([ + ('acc_number', '=', acc_number), + ]).journal_id.id + if not journal_id: + account = import_wizard._create_bank_account(acc_number) + journal_id = self.env['account.journal']\ + .search([('currency.name', '=', 'EUR')]).ids[0] + account.journal_id = journal_id + action = import_wizard.with_context(journal_id=journal_id)\ .create({'data_file': base64.b64encode('hello world')})\ .import_file() for statement in self.env['account.bank.statement'].browse(