From f7a57a59155368e351eb642a253142c4e536fb23 Mon Sep 17 00:00:00 2001 From: Lorenz Herzberger Date: Tue, 12 Apr 2022 08:29:49 +0200 Subject: [PATCH] minor changes to get_transaction Signed-off-by: Lorenz Herzberger --- planetmint/backend/query.py | 14 +++++++++++++- planetmint/lib.py | 9 ++++++--- tests/assets/test_digital_assets.py | 1 - 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/planetmint/backend/query.py b/planetmint/backend/query.py index 2c26bfa..56b29ae 100644 --- a/planetmint/backend/query.py +++ b/planetmint/backend/query.py @@ -89,7 +89,7 @@ def get_transactions(connection, transaction_ids): @singledispatch def get_asset(connection, asset_id): - """Get a transaction from the transactions table. + """Get an asset from the assets table. Args: asset_id (str): the id of the asset @@ -100,6 +100,18 @@ def get_asset(connection, asset_id): raise NotImplementedError +@singledispatch +def get_assets(connection, asset_ids): + """Get assets from the assets table. + + Args: + asset_ids (list): list of asset ids to fetch + + Returns: + The result of the operation. + """ + + raise NotImplementedError @singledispatch def get_spent(connection, transaction_id, condition_id): diff --git a/planetmint/lib.py b/planetmint/lib.py index bbd05bd..25fde1f 100644 --- a/planetmint/lib.py +++ b/planetmint/lib.py @@ -244,10 +244,13 @@ class Planetmint(object): # NOTE: Read up on localmongodb setup and how the connection calls are actually loaded => implementation shows NotImplementError if transaction: - asset = backend.query.get_asset(self.connection, transaction_id) + # asset = backend.query.get_asset(self.connection, transaction_id) + assets = backend.query.get_assets(self.connection, [transaction_id]) metadata = backend.query.get_metadata(self.connection, [transaction_id]) - if asset: - transaction['assets'] = asset + if assets: + # NOTE: THIS IS A HACK TO SEE IF THE TX HASH IS CORRECT FOR TESTS, NEEDS TO BE REPLACED AFTER backend.query.get_assets_for_tx is finished + # transaction['assets'] = [asset] + transaction['assets'] = assets if 'metadata' not in transaction: metadata = metadata[0] if metadata else None diff --git a/tests/assets/test_digital_assets.py b/tests/assets/test_digital_assets.py index cf28ac1..f8ed8fb 100644 --- a/tests/assets/test_digital_assets.py +++ b/tests/assets/test_digital_assets.py @@ -48,7 +48,6 @@ def test_get_asset_id_transfer_transaction(b, signed_create_tx, user_pk): assert asset_ids[0] == tx_transfer.assets[0]['id'] - def test_create_valid_divisible_asset(b, user_pk, user_sk): tx = Create.generate([user_pk], [([user_pk], 2)])