Files
tryton/trytond/tests/test_ir.py
T
2016-05-24 11:16:24 +02:00

46 lines
1.5 KiB
Python

# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
from dateutil.relativedelta import relativedelta
import unittest
from trytond.pool import Pool
from trytond.transaction import Transaction
from .test_tryton import ModuleTestCase, with_transaction
class IrTestCase(ModuleTestCase):
'Test ir module'
module = 'ir'
@with_transaction()
def test_sequence_substitutions(self):
'Test Sequence Substitutions'
pool = Pool()
Sequence = pool.get('ir.sequence')
SequenceType = pool.get('ir.sequence.type')
Date = pool.get('ir.date')
try:
Group = pool.get('res.group')
groups = Group.search([])
except KeyError:
groups = []
sequence_type = SequenceType(name='Test', code='test', groups=groups)
sequence_type.save()
sequence = Sequence(name='Test Sequence', code='test')
sequence.save()
self.assertEqual(Sequence.get_id(sequence.id), '1')
today = Date.today()
sequence.prefix = '${year}'
sequence.save()
self.assertEqual(Sequence.get_id(sequence.id),
'%s2' % str(today.year))
next_year = today + relativedelta(years=1)
with Transaction().set_context(date=next_year):
self.assertEqual(Sequence.get_id(sequence.id),
'%s3' % str(next_year.year))
def suite():
return unittest.TestLoader().loadTestsFromTestCase(IrTestCase)