spreadsheet_account/tests/test_company_fiscal_year.py

103 lines
3.4 KiB
Python

# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo.tests.common import TransactionCase
from datetime import date
class SpreadsheetFiscalYearTest(TransactionCase):
def test_fiscal_year_reference(self):
self.env.company.fiscalyear_last_day = 3
self.env.company.fiscalyear_last_month = "2"
self.assertEqual(
self.env["res.company"].get_fiscal_dates(
[{"company_id": None, "date": "2020-03-05"}]
),
[
{"start": date(2020, 2, 4), "end": date(2021, 2, 3)},
],
)
def test_fiscal_year_reference_last_day(self):
self.env.company.fiscalyear_last_day = 3
self.env.company.fiscalyear_last_month = "2"
self.assertEqual(
self.env["res.company"].get_fiscal_dates(
[{"company_id": None, "date": "2020-02-03"}]
),
[
{"start": date(2019, 2, 4), "end": date(2020, 2, 3)},
],
)
def test_fiscal_year_reference_first_day(self):
self.env.company.fiscalyear_last_day = 3
self.env.company.fiscalyear_last_month = "2"
self.assertEqual(
self.env["res.company"].get_fiscal_dates(
[{"company_id": None, "date": "2020-02-04"}]
),
[{"start": date(2020, 2, 4), "end": date(2021, 2, 3)}],
)
def test_fiscal_year_with_company_id(self):
self.env.company.fiscalyear_last_day = 7
self.env.company.fiscalyear_last_month = "6"
company = self.env["res.company"].create(
{
"name": "test company",
"fiscalyear_last_day": 3,
"fiscalyear_last_month": "2",
}
)
self.assertEqual(
self.env["res.company"].get_fiscal_dates(
[
{"company_id": company.id, "date": "2020-02-04"},
{"company_id": None, "date": "2020-02-04"},
]
),
[
{"start": date(2020, 2, 4), "end": date(2021, 2, 3)},
{"start": date(2019, 6, 8), "end": date(2020, 6, 7)},
],
)
def test_result_order(self):
company = self.env["res.company"].create(
{
"name": "test company",
"fiscalyear_last_day": 3,
"fiscalyear_last_month": "2",
}
)
request1 = {"company_id": company.id, "date": "2020-02-04"}
request2 = {"company_id": None, "date": "2020-02-04"}
[o1_request1, o1_request2] = self.env["res.company"].get_fiscal_dates(
[request1, request2]
)
[o2_request2, o2_request1] = self.env["res.company"].get_fiscal_dates(
[request2, request1]
)
self.assertEqual(o1_request1, o2_request1)
self.assertEqual(o1_request2, o2_request2)
def test_fiscal_year_with_wrong_company_id(self):
self.env.company.fiscalyear_last_day = 7
self.env.company.fiscalyear_last_month = "6"
self.assertEqual(
self.env["res.company"].get_fiscal_dates(
[
{"company_id": 999, "date": "2020-02-04"},
{"company_id": None, "date": "2020-02-04"},
]
),
[
False,
{"start": date(2019, 6, 8), "end": date(2020, 6, 7)},
],
)