diff --git a/core/constants.go b/core/constants.go index c3d7bca4..e022eea3 100644 --- a/core/constants.go +++ b/core/constants.go @@ -202,10 +202,10 @@ const ( NonFungible // NonFungibleV2 defines the token type for ESDT non fungible tokens NonFungibleV2 - // Meta defines the token type for ESDT meta tokens - Meta // SemiFungible defines the token type for ESDT semi fungible tokens SemiFungible + // MetaFungible defines the token type for ESDT meta fungible tokens + MetaFungible // DynamicNFT defines the token type for ESDT dynamic NFT tokens DynamicNFT // DynamicSFT defines the token type for ESDT dynamic SFT tokens diff --git a/core/converters.go b/core/converters.go index 833f3828..9f3d6dfa 100644 --- a/core/converters.go +++ b/core/converters.go @@ -188,7 +188,7 @@ func ConvertESDTTypeToUint32(esdtType string) (uint32, error) { case NonFungibleESDTv2: return uint32(NonFungibleV2), nil case MetaESDT: - return uint32(Meta), nil + return uint32(MetaFungible), nil case SemiFungibleESDT: return uint32(SemiFungible), nil case DynamicNFTESDT: diff --git a/core/converters_test.go b/core/converters_test.go index dc095176..a6f75d3b 100644 --- a/core/converters_test.go +++ b/core/converters_test.go @@ -255,3 +255,56 @@ func TestConvertShardIDToUint32(t *testing.T) { assert.Error(t, err) assert.Equal(t, uint32(0), shardID) } + +func TestConvertESDTTypeToUint32(t *testing.T) { + t.Parallel() + + tokenTypeId, err := core.ConvertESDTTypeToUint32(core.FungibleESDT) + assert.Nil(t, err) + assert.Equal(t, uint32(core.Fungible), tokenTypeId) + + tokenTypeId, err = core.ConvertESDTTypeToUint32(core.NonFungibleESDT) + assert.Nil(t, err) + assert.Equal(t, uint32(core.NonFungible), tokenTypeId) + + tokenTypeId, err = core.ConvertESDTTypeToUint32(core.NonFungibleESDTv2) + assert.Nil(t, err) + assert.Equal(t, uint32(core.NonFungibleV2), tokenTypeId) + + tokenTypeId, err = core.ConvertESDTTypeToUint32(core.MetaESDT) + assert.Nil(t, err) + assert.Equal(t, uint32(core.MetaFungible), tokenTypeId) + + tokenTypeId, err = core.ConvertESDTTypeToUint32(core.SemiFungibleESDT) + assert.Nil(t, err) + assert.Equal(t, uint32(core.SemiFungible), tokenTypeId) + + tokenTypeId, err = core.ConvertESDTTypeToUint32(core.DynamicNFTESDT) + assert.Nil(t, err) + assert.Equal(t, uint32(core.DynamicNFT), tokenTypeId) + + tokenTypeId, err = core.ConvertESDTTypeToUint32(core.DynamicSFTESDT) + assert.Nil(t, err) + assert.Equal(t, uint32(core.DynamicSFT), tokenTypeId) + + tokenTypeId, err = core.ConvertESDTTypeToUint32(core.DynamicMetaESDT) + assert.Nil(t, err) + assert.Equal(t, uint32(core.DynamicMeta), tokenTypeId) + + tokenTypeId, err = core.ConvertESDTTypeToUint32("wrongType") + assert.NotNil(t, err) + assert.Equal(t, uint32(math.MaxUint32), tokenTypeId) +} + +func TestIsDynamicESDT(t *testing.T) { + t.Parallel() + + assert.True(t, core.IsDynamicESDT(uint32(core.DynamicNFT))) + assert.True(t, core.IsDynamicESDT(uint32(core.DynamicSFT))) + assert.True(t, core.IsDynamicESDT(uint32(core.DynamicMeta))) + assert.False(t, core.IsDynamicESDT(uint32(core.Fungible))) + assert.False(t, core.IsDynamicESDT(uint32(core.NonFungible))) + assert.False(t, core.IsDynamicESDT(uint32(core.NonFungibleV2))) + assert.False(t, core.IsDynamicESDT(uint32(core.SemiFungible))) + assert.False(t, core.IsDynamicESDT(uint32(core.MetaFungible))) +}