mirror of
https://github.com/bigchaindb/bigchaindb.git
synced 2024-10-13 13:34:05 +00:00

* Problem: we have unused and outdated fixtures Solution: clean up fixtures and tests accordingly * Problem: there are still unused fixtures Solution: remove Merlin keys * Problem: There are unnecessary markers Solution: remove the tendermint marker for tests
48 lines
1.5 KiB
Python
48 lines
1.5 KiB
Python
# Copyright BigchainDB GmbH and BigchainDB contributors
|
|
# SPDX-License-Identifier: (Apache-2.0 AND CC-BY-4.0)
|
|
# Code is Apache-2.0 and docs are CC-BY-4.0
|
|
|
|
"""Test getting a list of transactions from the backend.
|
|
|
|
This test module defines it's own fixture which is used by all the tests.
|
|
"""
|
|
import pytest
|
|
|
|
|
|
@pytest.fixture
|
|
def txlist(b, user_pk, user2_pk, user_sk, user2_sk):
|
|
from bigchaindb.models import Transaction
|
|
|
|
# Create two CREATE transactions
|
|
create1 = Transaction.create([user_pk], [([user2_pk], 6)]) \
|
|
.sign([user_sk])
|
|
|
|
create2 = Transaction.create([user2_pk],
|
|
[([user2_pk], 5), ([user_pk], 5)]) \
|
|
.sign([user2_sk])
|
|
|
|
# Create a TRANSFER transactions
|
|
transfer1 = Transaction.transfer(create1.to_inputs(),
|
|
[([user_pk], 8)],
|
|
create1.id).sign([user2_sk])
|
|
|
|
b.store_bulk_transactions([create1, create2, transfer1])
|
|
|
|
return type('', (), {
|
|
'create1': create1,
|
|
'transfer1': transfer1,
|
|
})
|
|
|
|
|
|
@pytest.mark.bdb
|
|
def test_get_txlist_by_asset(b, txlist):
|
|
res = b.get_transactions_filtered(txlist.create1.id)
|
|
assert sorted(set(tx.id for tx in res)) == sorted(
|
|
set([txlist.transfer1.id, txlist.create1.id]))
|
|
|
|
|
|
@pytest.mark.bdb
|
|
def test_get_txlist_by_operation(b, txlist):
|
|
res = b.get_transactions_filtered(txlist.create1.id, operation='CREATE')
|
|
assert set(tx.id for tx in res) == {txlist.create1.id}
|