cic-stack/apps/cic-ussd/tests/fixtures/transaction.py

157 lines
7.3 KiB
Python

# standard import
import random
# external import
import pytest
# local import
from cic_ussd.account.balance import get_cached_available_balance
# tests imports
@pytest.fixture(scope='function')
def notification_data(activated_account,
cache_person_metadata,
cache_preferences,
cache_balances,
preferences,
valid_recipient):
return {
'blockchain_address': activated_account.blockchain_address,
'token_symbol': 'GFT',
'token_value': 25000000,
'role': 'sender',
'action_tag': 'Sent',
'direction_tag': 'To',
'alt_metadata_id': valid_recipient.standard_metadata_id(),
'metadata_id': activated_account.standard_metadata_id(),
'phone_number': activated_account.phone_number,
'available_balance': 50.0,
'preferred_language': preferences.get('preferred_language')
}
@pytest.fixture(scope='function')
def statement(activated_account):
return [
{
'blockchain_address': activated_account.blockchain_address,
'token_symbol': 'GFT',
'token_value': 25000000,
'token_decimals': 6,
'role': 'sender',
'action_tag': 'Sent',
'direction_tag': 'To',
'metadata_id': activated_account.standard_metadata_id(),
'phone_number': activated_account.phone_number,
}
]
@pytest.fixture(scope='function')
def transaction_result(activated_account, load_config, valid_recipient):
return {
'hash': '0xb469fb2ebacc9574afb7b51d44e174fba7129fde71bf757fd39784363270832b',
'sender': activated_account.blockchain_address,
'recipient': valid_recipient.blockchain_address,
'source_token_value': 25000000,
'destination_token_value': 25000000,
'source_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd',
'destination_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd',
'source_token_symbol': load_config.get('TEST_TOKEN_SYMBOL'),
'destination_token_symbol': load_config.get('TEST_TOKEN_SYMBOL'),
'source_token_decimals': 6,
'destination_token_decimals': 6,
'chain': load_config.get('CHAIN_SPEC')
}
@pytest.fixture(scope='function')
def transactions_list(activated_account, valid_recipient):
return [
{
'tx_hash': '0x7cdca277861665fa56c4c32930101ff41316c61af3683be12b4879e3d9990125',
'signed_tx': '0xf8a70201837a120094b708175e3f6cd850643aaf7b32212afad50e254980b844a9059cbb000000000000000000000000367cb0f65137b0a845c1db4b7ca47d3def32dde800000000000000000000000000000000000000000000000000000000017d784082466ba030a75acff9081e57e0a9daa6858d7473fc10348bf95a6da4dd1dc6a602883c8da005358742612001ad44fc142c30bcc23b452af48c90f9c6c80433ae2a93b2e96e',
'nonce': 2,
'status': 'SUCCESS',
'status_code': 4104,
'source_token': '0xb708175e3f6Cd850643aAF7B32212AFad50e2549',
'destination_token': '0xb708175e3f6Cd850643aAF7B32212AFad50e2549',
'block_number': 94,
'tx_index': 0,
'sender': activated_account.blockchain_address,
'recipient': valid_recipient.blockchain_address,
'from_value': 25000000,
'to_value': 25000000,
'date_created': '2021-07-14T14:14:58.117017',
'date_updated': '2021-07-14T14:14:58.117017',
'date_checked': '2021-07-14T14:14:58.603124',
'timestamp': 1626272098,
'hash': '0x7cdca277861665fa56c4c32930101ff41316c61af3683be12b4879e3d9990125',
'source_token_symbol': 'GFT',
'source_token_decimals': 6,
'destination_token_symbol': 'GFT',
'destination_token_decimals': 6
},
{
'tx_hash': '0x5bd3b72f07ceb55199e759e8e82006b1c70bd5b87a3d37e3327515ea27872290',
'signed_tx': '0xf88601018323186094103d1ed6e370dba6267045c70d4999384c18a04a80a463e4bff4000000000000000000000000367cb0f65137b0a845c1db4b7ca47d3def32dde882466ca00beb6913cdd0b9b63469fbca53e2fb48dceeedf73d31d54c23c85392f01419a8a02352fff9187ba3dd6409ef6e473369dc4c3459a8baaa9bc1d68a541ca8a8f923',
'nonce': 1,
'status': 'REVERTED',
'status_code': 5128,
'source_token': '0x0000000000000000000000000000000000000000',
'destination_token': '0x0000000000000000000000000000000000000000',
'block_number': 80,
'tx_index': 0,
'sender': '367cB0F65137b0A845c1DB4B7Ca47D3DEF32dDe8',
'recipient': '103d1ed6e370dBa6267045c70d4999384c18a04A',
'from_value': 0,
'to_value': 0,
'date_created': '2021-07-14T14:13:46.036198',
'date_updated': '2021-07-14T14:13:46.036198',
'date_checked': '2021-07-14T14:13:46.450050',
'timestamp': 1626272026,
'hash': '0x5bd3b72f07ceb55199e759e8e82006b1c70bd5b87a3d37e3327515ea27872290'},
{
'tx_hash': '0x9d586562e1e40ae80fd506161e59825bc316293b5c522b8f243cf6c804c7843b',
'signed_tx': '0xf868800182520894367cb0f65137b0a845c1db4b7ca47d3def32dde887066517289880008082466ca0c75083ea13d4fa9dfd408073cd0a8234199b78e79afe441fb71d7c79aa282ca6a00a7dd29e3ec1102817236d85af365fce7593b337ee609d02efdb86d298cf11ab',
'nonce': 0,
'status': 'SUCCESS',
'status_code': 4104,
'source_token': '0x0000000000000000000000000000000000000000',
'destination_token': '0x0000000000000000000000000000000000000000',
'block_number': 78,
'tx_index': 0,
'sender': 'b41BfEE260693A473254D62b81aE1ADCC9E51AFb',
'recipient': '367cB0F65137b0A845c1DB4B7Ca47D3DEF32dDe8',
'from_value': 1800000000000000,
'to_value': 1800000000000000,
'date_created': '2021-07-14T14:13:35.839638',
'date_updated': '2021-07-14T14:13:35.839638',
'date_checked': '2021-07-14T14:13:36.333426',
'timestamp': 1626272015,
'hash': '0x9d586562e1e40ae80fd506161e59825bc316293b5c522b8f243cf6c804c7843b'
},
{
'tx_hash': '0x32ca3dd3bef06463b452f4d32f5f563d083cb4759219eed90f3d2a9c1791c5fc',
'signed_tx': '0xf88680018323186094103d1ed6e370dba6267045c70d4999384c18a04a80a463e4bff4000000000000000000000000367cb0f65137b0a845c1db4b7ca47d3def32dde882466ca0ab9ec1c6affb80f54bb6c2a25e64f38b3da840404180fb189bd6e191266f3c63a03cc53e59f8528da04aeec36ab8ae099553fca366bd067feffed6362ccb28d8f0',
'nonce': 0,
'status': 'SUCCESS',
'status_code': 4104,
'source_token': '0x0000000000000000000000000000000000000000',
'destination_token': '0x0000000000000000000000000000000000000000',
'block_number': 79,
'tx_index': 0,
'sender': '367cB0F65137b0A845c1DB4B7Ca47D3DEF32dDe8',
'recipient': '103d1ed6e370dBa6267045c70d4999384c18a04A',
'from_value': 0,
'to_value': 0,
'date_created': '2021-07-14T14:13:35.638355',
'date_updated': '2021-07-14T14:13:35.638355',
'date_checked': '2021-07-14T14:13:40.927113',
'timestamp': 1626272015,
'hash': '0x32ca3dd3bef06463b452f4d32f5f563d083cb4759219eed90f3d2a9c1791c5fc'}
]