asset: abfrage updatezeitpunkt optimiert, anzeige der vortagsprozente, farbe für zeilen
This commit is contained in:
parent
57cb06d60e
commit
31c76dfb48
5 changed files with 117 additions and 98 deletions
|
@ -8,7 +8,7 @@ from trytond.pool import Pool
|
|||
from trytond.modules.company.tests import create_company
|
||||
from trytond.transaction import Transaction
|
||||
from decimal import Decimal
|
||||
from datetime import time, date
|
||||
from datetime import time, date, datetime
|
||||
|
||||
|
||||
class AssetTestCase(ModuleTestCase):
|
||||
|
@ -221,31 +221,23 @@ class AssetTestCase(ModuleTestCase):
|
|||
'updtsource': o_source.id,
|
||||
'updttime': time(10, 45),
|
||||
}])
|
||||
self.assertEqual(asset.updtsource.rec_name, 'Source 1')
|
||||
self.assertEqual(asset.updttime, time(10, 45))
|
||||
self.assertEqual(len(asset.rates), 0)
|
||||
|
||||
with Transaction().set_context({
|
||||
'qdate': date(2022, 10, 15),
|
||||
'qtime': time(10, 30),
|
||||
'qdate': date(2022, 10, 14),
|
||||
}):
|
||||
# re-read to make context work
|
||||
asset2, = Asset.browse([asset.id])
|
||||
# no rates exists - wait for 10:45
|
||||
self.assertEqual(asset2.updtneeded, False)
|
||||
self.assertEqual(
|
||||
Asset.search_count([('updtneeded', '=', True)]),
|
||||
0)
|
||||
|
||||
with Transaction().set_context({
|
||||
'qdate': date(2022, 10, 15),
|
||||
'qtime': time(10, 46),
|
||||
}):
|
||||
# no rates exists - run at 10:46
|
||||
asset2, = Asset.browse([asset.id])
|
||||
self.assertEqual(asset2.updtneeded, True)
|
||||
self.assertEqual(asset2.updtsource.rec_name, 'Source 1')
|
||||
self.assertEqual(asset2.updttime, time(10, 45))
|
||||
self.assertEqual(len(asset2.rates), 0)
|
||||
self.assertEqual(asset2.nextupdtate, datetime(2022, 10, 15, 10, 45))
|
||||
|
||||
self.assertEqual(
|
||||
Asset.search_count([('updtneeded', '=', True)]),
|
||||
Asset.search_count([('nextupdtate', '<', datetime(2022, 10, 15, 10, 45))]),
|
||||
0)
|
||||
self.assertEqual(
|
||||
Asset.search_count([('nextupdtate', '>=', datetime(2022, 10, 15, 10, 45))]),
|
||||
1)
|
||||
|
||||
# add rate at yesterday
|
||||
|
@ -259,27 +251,19 @@ class AssetTestCase(ModuleTestCase):
|
|||
}])
|
||||
self.assertEqual(len(asset.rates), 1)
|
||||
|
||||
with Transaction().set_context({
|
||||
'qdate': date(2022, 10, 15),
|
||||
'qtime': time(10, 30),
|
||||
}):
|
||||
# 1x rate exists - run at 10:30
|
||||
asset2, = Asset.browse([asset.id])
|
||||
self.assertEqual(asset2.updtneeded, False)
|
||||
self.assertEqual(
|
||||
Asset.search_count([('updtneeded', '=', True)]),
|
||||
0)
|
||||
asset2, = Asset.browse([asset.id])
|
||||
self.assertEqual(asset.updtsource.rec_name, 'Source 1')
|
||||
self.assertEqual(asset.updttime, time(10, 45))
|
||||
self.assertEqual(len(asset.rates), 1)
|
||||
self.assertEqual(asset.rates[0].date, date(2022, 10, 14))
|
||||
self.assertEqual(asset.nextupdtate, datetime(2022, 10, 15, 10, 45))
|
||||
|
||||
with Transaction().set_context({
|
||||
'qdate': date(2022, 10, 15),
|
||||
'qtime': time(10, 46),
|
||||
}):
|
||||
# 1x rate exists yesterday - run at 10:46
|
||||
asset2, = Asset.browse([asset.id])
|
||||
self.assertEqual(asset2.updtneeded, True)
|
||||
self.assertEqual(
|
||||
Asset.search_count([('updtneeded', '=', True)]),
|
||||
1)
|
||||
self.assertEqual(
|
||||
Asset.search_count([('nextupdtate', '<', datetime(2022, 10, 15, 10, 45))]),
|
||||
0)
|
||||
self.assertEqual(
|
||||
Asset.search_count([('nextupdtate', '>=', datetime(2022, 10, 15, 10, 45))]),
|
||||
1)
|
||||
|
||||
# add rate at today
|
||||
Asset.write(*[
|
||||
|
@ -292,16 +276,19 @@ class AssetTestCase(ModuleTestCase):
|
|||
}])
|
||||
self.assertEqual(len(asset.rates), 2)
|
||||
|
||||
with Transaction().set_context({
|
||||
'qdate': date(2022, 10, 15),
|
||||
'qtime': time(10, 47),
|
||||
}):
|
||||
# 1x rate exists today - run at 10:47
|
||||
asset2, = Asset.browse([asset.id])
|
||||
self.assertEqual(asset2.updtneeded, False)
|
||||
self.assertEqual(
|
||||
Asset.search_count([('updtneeded', '=', True)]),
|
||||
0)
|
||||
asset2, = Asset.browse([asset.id])
|
||||
self.assertEqual(asset2.updtsource.rec_name, 'Source 1')
|
||||
self.assertEqual(asset2.updttime, time(10, 45))
|
||||
self.assertEqual(len(asset2.rates), 2)
|
||||
self.assertEqual(asset2.rates[0].date, date(2022, 10, 15))
|
||||
self.assertEqual(asset2.nextupdtate, datetime(2022, 10, 16, 10, 45))
|
||||
|
||||
self.assertEqual(
|
||||
Asset.search_count([('nextupdtate', '<', datetime(2022, 10, 15, 10, 45))]),
|
||||
0)
|
||||
self.assertEqual(
|
||||
Asset.search_count([('nextupdtate', '>=', datetime(2022, 10, 15, 10, 45))]),
|
||||
1)
|
||||
|
||||
@with_transaction()
|
||||
def test_asset_indentifiers(self):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue