github.com/InjectiveLabs/sdk-go@v1.53.0/client/core/token_test.go (about)

     1  package core
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/huandu/go-assert"
     7  	"github.com/shopspring/decimal"
     8  )
     9  
    10  func createINJToken() Token {
    11  	token := Token{
    12  		Name:     "Injective Protocol",
    13  		Symbol:   "INJ",
    14  		Denom:    "inj",
    15  		Address:  "0xe28b3B32B6c345A34Ff64674606124Dd5Aceca30",
    16  		Decimals: 18,
    17  		Logo:     "https://static.alchemyapi.io/images/assets/7226.png",
    18  		Updated:  1681739137644,
    19  	}
    20  
    21  	return token
    22  }
    23  
    24  func createUSDTToken() Token {
    25  	token := Token{
    26  		Name:     "USDT",
    27  		Symbol:   "USDT",
    28  		Denom:    "peggy0x87aB3B4C8661e07D6372361211B96ed4Dc36B1B5",
    29  		Address:  "0x0000000000000000000000000000000000000000",
    30  		Decimals: 6,
    31  		Logo:     "https://static.alchemyapi.io/images/assets/825.png",
    32  		Updated:  1681739137645,
    33  	}
    34  
    35  	return token
    36  }
    37  
    38  func TestChainFormattedValue(t *testing.T) {
    39  	value := decimal.RequireFromString("1.3456")
    40  	token := createINJToken()
    41  
    42  	chainFormattedValue := token.ChainFormattedValue(value)
    43  	multiplier := decimal.New(1, int32(token.Decimals))
    44  	expectedValue := value.Mul(multiplier)
    45  
    46  	assert.Equal(t, chainFormattedValue, expectedValue)
    47  }