# standard imports import json # third party imports import pytest # local imports from cic_ussd.redis import InMemoryStore @pytest.fixture(scope='function') def account_creation_action_data(): return { 'phone_number': '+254712345678', 'sms_notification_sent': False, 'status': 'PENDING', 'task_id': '31e85315-feee-4b6d-995e-223569082cc4' } @pytest.fixture(scope='function') def set_account_creation_action_data(init_redis_cache, account_creation_action_data): redis_cache = init_redis_cache action_data = account_creation_action_data task_id = action_data.get('task_id') redis_cache.set(task_id, json.dumps(action_data)) redis_cache.persist(task_id) @pytest.fixture(scope='function') def successful_incoming_token_gift_callback(): return { 'RESULT': { 'hash': '0xb469fb2ebacc9574afb7b51d44e174fba7129fde71bf757fd39784363270832b', 'sender': '0xd6204101012270Bf2558EDcFEd595938d1847bf0', 'recipient': '0xFD9c5aD15C72C6F60f1a119A608931226674243f', 'source_value': 1048576, 'destination_value': 1048576, 'source_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd', 'destination_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd', 'source_token_symbol': 'SRF', 'destination_token_symbol': 'SRF', 'source_token_decimals': 18, 'destination_token_decimals': 18, 'chain': 'Bloxberg:8996' }, 'PARAM': 'tokengift', 'STATUS_CODE': 0, } @pytest.fixture(scope='function') def successful_incoming_transfer_callback(): return { 'RESULT': { 'hash': '0x8b0ed32533164d010afc46c0011fbcb58b0198e03c05b96e2791555746bd3606', 'sender': '0xd6204101012270Bf2558EDcFEd595938d1847bf1', 'recipient': '0xd6204101012270Bf2558EDcFEd595938d1847bf0', 'source_value': 10000000000000000000000, 'destination_value': 10000000000000000000000, 'source_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd', 'destination_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd', 'source_token_symbol': 'SRF', 'destination_token_symbol': 'SRF', 'source_token_decimals': 18, 'destination_token_decimals': 18, 'chain': 'Bloxberg:8996' }, 'PARAM': 'transfer', 'STATUS_CODE': 0 } @pytest.fixture(scope='function') def incoming_transfer_callback_invalid_tx_status_code(): return { 'RESULT': { 'hash': '0x8b0ed32533164d010afc46c0011fbcb58b0198e03c05b96e2791555746bd3606', 'sender': '0xd6204101012270Bf2558EDcFEd595938d1847bf1', 'recipient': '0xd6204101012270Bf2558EDcFEd595938d1847bf0', 'source_value': 10000000000000000000000, 'destination_value': 10000000000000000000000, 'source_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd', 'destination_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd', 'source_token_symbol': 'SRF', 'destination_token_symbol': 'SRF', 'source_token_decimals': 18, 'destination_token_decimals': 18, 'chain': 'Bloxberg:8996' }, 'PARAM': 'transfer', 'STATUS_CODE': 1 } @pytest.fixture(scope='function') def incoming_transfer_callback_invalid_tx_param(): return { 'RESULT': { 'hash': '0x8b0ed32533164d010afc46c0011fbcb58b0198e03c05b96e2791555746bd3606', 'sender': '0xd6204101012270Bf2558EDcFEd595938d1847bf1', 'recipient': '0xd6204101012270Bf2558EDcFEd595938d1847bf0', 'source_value': 10000000000000000000000, 'destination_value': 10000000000000000000000, 'source_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd', 'destination_token': '0xa75B519dc9b0A50D267E03D8B6808f85A66932dd', 'source_token_symbol': 'SRF', 'destination_token_symbol': 'SRF', 'source_token_decimals': 18, 'destination_token_decimals': 18, 'chain': 'Bloxberg:8996' }, 'PARAM': 'erroneousparam', 'STATUS_CODE': 0 }