3
3
from mock import AsyncMock
4
4
5
5
6
- from pythclient .solana import SolanaAccount , SolanaPublicKey , SolanaClient
6
+ from pythclient .solana import SolanaAccount , SolanaPublicKey
7
7
8
8
9
9
@pytest .fixture
@@ -18,6 +18,7 @@ def solana_account(solana_pubkey, solana_client):
18
18
solana = solana_client ,
19
19
)
20
20
21
+
21
22
@pytest .fixture ()
22
23
def mock_get_account_info (mocker ):
23
24
async_mock = AsyncMock ()
@@ -32,8 +33,8 @@ def test_solana_account_update_with_rpc_response(
32
33
key = solana_pubkey ,
33
34
solana = solana_client ,
34
35
)
35
- assert actual .slot == None
36
- assert actual .lamports == None
36
+ assert actual .slot is None
37
+ assert actual .lamports is None
37
38
38
39
slot = 106498726
39
40
value = {
@@ -45,6 +46,7 @@ def test_solana_account_update_with_rpc_response(
45
46
assert actual .slot == slot
46
47
assert actual .lamports == value ["lamports" ]
47
48
49
+
48
50
@pytest .mark .asyncio
49
51
async def test_solana_account_update_success (mock_get_account_info , solana_pubkey , solana_client ):
50
52
actual = SolanaAccount (
@@ -54,11 +56,11 @@ async def test_solana_account_update_success(mock_get_account_info, solana_pubke
54
56
55
57
mock_get_account_info .return_value = {'context' : {'slot' : 93752509 }, 'value' : {'lamports' : 1000000001 }}
56
58
57
-
58
59
await actual .update ()
59
60
assert actual .slot == mock_get_account_info .return_value ['context' ]['slot' ]
60
61
assert actual .lamports == mock_get_account_info .return_value ['value' ]['lamports' ]
61
62
63
+
62
64
@pytest .mark .asyncio
63
65
async def test_solana_account_update_fail (mock_get_account_info , caplog , solana_pubkey , solana_client ):
64
66
actual = SolanaAccount (
@@ -70,19 +72,20 @@ async def test_solana_account_update_fail(mock_get_account_info, caplog, solana_
70
72
await actual .update ()
71
73
assert exc_message in caplog .text
72
74
75
+
73
76
@pytest .mark .asyncio
74
77
async def test_solana_account_update_null (mock_get_account_info , caplog , solana_pubkey , solana_client ):
75
78
actual = SolanaAccount (
76
79
key = solana_pubkey ,
77
80
solana = solana_client ,
78
81
)
79
82
mock_get_account_info .return_value = {'context' : {'slot' : 93752509 }}
80
- exc_message = f'got null value from Solana getAccountInfo for { solana_pubkey } ; non-existent account? { mock_get_account_info .return_value } '
83
+ exc_message = f'got null value from Solana getAccountInfo for { solana_pubkey } ; ' \
84
+ + f'non-existent account? { mock_get_account_info .return_value } '
81
85
await actual .update ()
82
86
assert exc_message in caplog .text
83
87
84
88
85
-
86
89
def test_solana_account_str (solana_account ):
87
90
actual = str (solana_account )
88
91
expected = f"SolanaAccount ({ solana_account .key } )"
0 commit comments