investment/tests/rate.py

51 lines
1.8 KiB
Python
Raw Permalink Normal View History

2022-11-13 21:57:40 +00:00
# -*- coding: utf-8 -*-
# This file is part of the investment-module from m-ds for Tryton.
2022-11-13 21:57:40 +00:00
# The COPYRIGHT file at the top level of this repository contains the
# full copyright notices and license terms.
2023-06-07 16:44:53 +00:00
from trytond.tests.test_tryton import with_transaction
2023-06-07 17:24:43 +00:00
from trytond.transaction import Transaction
2022-11-13 21:57:40 +00:00
from trytond.pool import Pool
from decimal import Decimal
from datetime import date
2023-06-07 16:44:53 +00:00
class RateTestCase(object):
""" test rate
"""
2022-11-13 21:57:40 +00:00
@with_transaction()
def test_rate_create(self):
""" create rate
"""
Asset = Pool().get('investment.asset')
company = self.prep_asset_company()
2023-06-07 17:24:43 +00:00
with Transaction().set_context({'company': company.id}):
product = self.prep_asset_product(
name='Product 1',
description='some asset')
2022-11-13 21:57:40 +00:00
2023-06-07 18:06:36 +00:00
asset = self.prep_asset_item(company=company, product=product)
2022-11-13 21:57:40 +00:00
2023-06-07 18:06:36 +00:00
Asset.write(*[
[asset],
{
'rates': [('create', [{
'date': date(2022, 5, 1),
'rate': Decimal('2.5'),
}, {
'date': date(2022, 5, 2),
'rate': Decimal('2.8'),
}])],
}])
self.assertEqual(len(asset.rates), 2)
self.assertEqual(asset.rates[0].date, date(2022, 5, 2))
self.assertEqual(asset.rates[0].rate, Decimal('2.8'))
self.assertEqual(asset.rates[0].uom.rec_name, 'Unit')
self.assertEqual(asset.rates[0].asset_digits, 4)
self.assertEqual(asset.rates[0].currency.rec_name, 'usd')
self.assertEqual(asset.rates[0].symbol, '%')
self.assertEqual(asset.change_symbol.symbol, '%')
2022-11-13 21:57:40 +00:00
# end RateTestCase