github.com/status-im/status-go@v1.1.0/services/wallet/thirdparty/paraswap/request_token_list_test.go (about) 1 package paraswap 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 ) 8 9 func TestUnmarshallTokensList(t *testing.T) { 10 11 tokens := []Token{ 12 { 13 Symbol: "ETH", 14 Address: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", 15 Decimals: 18, 16 Img: "https://img.paraswap.network/ETH.png", 17 Network: 1, 18 }, 19 { 20 Symbol: "USDT", 21 Address: "0xdac17f958d2ee523a2206206994597c13d831ec7", 22 Decimals: 6, 23 Img: "https://img.paraswap.network/USDT.png", 24 Network: 1, 25 }, 26 } 27 28 data := []byte(`{ 29 "tokens": [ 30 { 31 "symbol": "ETH", 32 "address": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", 33 "decimals": 18, 34 "img": "https://img.paraswap.network/ETH.png", 35 "network": 1 36 }, 37 { 38 "symbol": "USDT", 39 "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", 40 "decimals": 6, 41 "img": "https://img.paraswap.network/USDT.png", 42 "network": 1 43 } 44 ] 45 }`) 46 47 receivedTokens, err := handleTokensListResponse(data) 48 assert.NoError(t, err) 49 assert.Equal(t, tokens, receivedTokens) 50 } 51 52 func TestForErrorOnFetchingTokensList(t *testing.T) { 53 data := []byte(`{ 54 "error": "Only chainId 1 is supported" 55 }`) 56 57 _, err := handleTokensListResponse(data) 58 assert.Error(t, err) 59 }