2
0
account-financial-tools/account_fiscal_year/tests/test_account_fiscal_year.py
2022-10-04 09:37:28 +02:00

46 lines
1.8 KiB
Python

# Author: Damien Crier
# Copyright 2016 Camptocamp SA
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
import datetime
from dateutil.relativedelta import relativedelta
from odoo import fields
from odoo.tests.common import TransactionCase
class TestAccountFiscalYear(TransactionCase):
def setUp(self):
super(TestAccountFiscalYear, self).setUp()
self.today_date = datetime.date.today() + relativedelta(years=100)
self.company = self.env.ref('base.main_company')
def test_compute_fiscalyear(self):
"""Check that a call to that Odoo's method returns the dates from
a fiscal year date range if one exists for the given date
"""
# check that the result by default from 1/1 31/12
result = self.company.compute_fiscalyear_dates(self.today_date)
self.assertEquals(
result['date_from'],
datetime.date(self.today_date.year, 1, 1))
self.assertEquals(
result['date_to'],
datetime.date(self.today_date.year, 12, 31))
# create a fiscal year with different limits
demo_date_range = self.env['date.range'].create(
{'name': 'FY%s' % (self.today_date.year),
'date_start': '%s-04-01' % self.today_date.year,
'date_end': '%s-11-30' % self.today_date.year,
'type_id': self.env.ref('account_fiscal_year.fiscalyear').id,
'company_id': self.company.id,
'active': True})
result = self.company.compute_fiscalyear_dates(
datetime.date(self.today_date.year, 5, 4))
self.assertEqual(
result['date_from'],
fields.Date.from_string(demo_date_range.date_start))
self.assertEqual(
result['date_to'],
fields.Date.from_string(demo_date_range.date_end))