From f9e55fab774739632a54316a38026b6e0589e8af Mon Sep 17 00:00:00 2001 From: Frederik Jaeckel Date: Fri, 29 Dec 2023 22:53:27 +0100 Subject: [PATCH] valuestore: fix test for number of fields --- tests/valuestore.py | 71 +++++++++++++++++++++++++++++++++------------ 1 file changed, 53 insertions(+), 18 deletions(-) diff --git a/tests/valuestore.py b/tests/valuestore.py index d6c800c..885c00e 100644 --- a/tests/valuestore.py +++ b/tests/valuestore.py @@ -63,7 +63,9 @@ class ValuestoreTestCase(object): }]) # run worker - self.assertEqual(ValueStore.search_count([]), 3) + self.assertEqual( + ValueStore.search_count([]), + len(Book.valuestore_fields())) self.prep_valstore_run_worker() book, = Book.search([]) @@ -71,7 +73,9 @@ class ValuestoreTestCase(object): self.assertEqual(book.balance, Decimal('15.0')) self.assertEqual(book.balance_all, Decimal('15.0')) self.assertEqual(book.balance_ref, Decimal('14.29')) - self.assertEqual(len(book.value_store), 3) + self.assertEqual( + len(book.value_store), + len(Book.valuestore_fields())) self.assertEqual( book.value_store[0].rec_name, '[Book 1 | 15.00 usd | Open]|balance|15.00|2') @@ -102,7 +106,9 @@ class ValuestoreTestCase(object): self.assertEqual(book.balance, Decimal('15.0')) self.assertEqual(book.balance_all, Decimal('15.0')) self.assertEqual(book.balance_ref, Decimal('13.89')) - self.assertEqual(len(book.value_store), 3) + self.assertEqual( + len(book.value_store), + len(Book.valuestore_fields())) self.assertEqual( book.value_store[0].rec_name, '[Book 1 | 15.00 usd | Open]|balance|15.00|2') @@ -212,7 +218,9 @@ class ValuestoreTestCase(object): }]) # run worker - self.assertEqual(ValueStore.search_count([]), 3) + self.assertEqual( + ValueStore.search_count([]), + len(Book.valuestore_fields())) self.prep_valstore_run_worker() # check values until 2022-05-05 @@ -224,7 +232,9 @@ class ValuestoreTestCase(object): self.assertEqual(book.balance, Decimal('10.0')) self.assertEqual(book.balance_all, Decimal('15.0')) self.assertEqual(book.balance_ref, Decimal('14.29')) - self.assertEqual(len(book.value_store), 3) + self.assertEqual( + len(book.value_store), + len(Book.valuestore_fields())) self.assertEqual( book.value_store[0].rec_name, '[Book 1 | 10.00 usd | Open]|balance|15.00|2') @@ -236,10 +246,14 @@ class ValuestoreTestCase(object): '[Book 1 | 10.00 usd | Open]|balance_ref|14.29|2') # values created by book-create, without context - self.assertEqual(ValueStore.search_count([]), 3) + self.assertEqual( + ValueStore.search_count([]), + len(Book.valuestore_fields())) values = ValueStore.search([], order=[('field_name', 'ASC')]) - self.assertEqual(len(values), 3) + self.assertEqual( + len(values), + len(Book.valuestore_fields())) self.assertEqual( values[0].rec_name, '[Book 1 | 10.00 usd | Open]|balance|15.00|2') @@ -270,7 +284,9 @@ class ValuestoreTestCase(object): Book.valuestore_update_records([book]) values = ValueStore.search([], order=[('field_name', 'ASC')]) - self.assertEqual(len(values), 3) + self.assertEqual( + len(values), + len(Book.valuestore_fields())) self.assertEqual( values[0].rec_name, @@ -293,10 +309,15 @@ class ValuestoreTestCase(object): self.assertEqual(book.balance_ref, Decimal('14.29')) # update values - self.assertEqual(ValueStore.search_count([]), 3) + self.assertEqual( + ValueStore.search_count([]), + len(Book.valuestore_fields())) Book.valuestore_update_records([book]) - values = ValueStore.search([], order=[('field_name', 'ASC')]) + values = ValueStore.search( + [('field_name', 'in', [ + 'balance', 'balance_all', 'balance_ref'])], + order=[('field_name', 'ASC')]) self.assertEqual(len(values), 3) self.assertEqual( @@ -314,7 +335,9 @@ class ValuestoreTestCase(object): [book], {'lines': [('delete', [x.id for x in book.lines])]} ]) - self.assertEqual(ValueStore.search_count([]), 3) + self.assertEqual( + ValueStore.search_count([]), + len(Book.valuestore_fields())) Book.delete([book]) self.assertEqual(ValueStore.search_count([]), 0) @@ -380,12 +403,16 @@ class ValuestoreTestCase(object): book.childs[1].rec_name, 'Lev 0/Lev 1b | 0.00 € | Open') self.assertEqual(len(book.childs[1].lines), 0) - self.assertEqual(ValueStore.search_count([]), 9) + self.assertEqual( + ValueStore.search_count([]), + 3 * len(Book.valuestore_fields())) self.prep_valstore_run_worker() values = ValueStore.search( - [], order=[('cashbook', 'ASC'), ('field_name', 'ASC')]) - self.assertEqual(len(values), 9) + [('field_name', 'in', [ + 'balance', 'balance_all', 'balance_ref'])], + order=[('cashbook', 'ASC'), ('field_name', 'ASC')]) + self.assertEqual(len(values), 3 * 3) self.assertEqual( values[0].rec_name, @@ -436,7 +463,9 @@ class ValuestoreTestCase(object): # (not stored) values with Transaction().set_context({'date': date(2022, 5, 10)}): values = ValueStore.search( - [], order=[('cashbook', 'ASC'), ('field_name', 'ASC')]) + [('field_name', 'in', [ + 'balance', 'balance_all', 'balance_ref'])], + order=[('cashbook', 'ASC'), ('field_name', 'ASC')]) self.assertEqual(len(values), 9) self.assertEqual( values[0].rec_name, @@ -470,7 +499,9 @@ class ValuestoreTestCase(object): # before run of workers - w/o 'date' in context values = ValueStore.search( - [], order=[('cashbook', 'ASC'), ('field_name', 'ASC')]) + [('field_name', 'in', [ + 'balance', 'balance_all', 'balance_ref'])], + order=[('cashbook', 'ASC'), ('field_name', 'ASC')]) self.assertEqual(len(values), 9) self.assertEqual( values[0].rec_name, @@ -506,7 +537,9 @@ class ValuestoreTestCase(object): # after run of workers values = ValueStore.search( - [], order=[('cashbook', 'ASC'), ('field_name', 'ASC')]) + [('field_name', 'in', [ + 'balance', 'balance_all', 'balance_ref'])], + order=[('cashbook', 'ASC'), ('field_name', 'ASC')]) self.assertEqual(len(values), 9) self.assertEqual( @@ -789,7 +822,9 @@ class ValuestoreTestCase(object): # delete book self.assertEqual(Book.search_count([]), 1) - self.assertEqual(ValueStore.search_count([]), 3) + self.assertEqual( + ValueStore.search_count([]), + len(Book.valuestore_fields())) query = tab_book.delete(where=tab_book.id == book.id) cursor.execute(*query) self.assertEqual(Book.search_count([]), 0)