refactor: generate contract from struct in test (#338)

- also use default params

Signed-off-by: Julian Strobl <jmastr@mailbox.org>
This commit is contained in:
Julian Strobl 2024-03-06 13:28:00 +01:00 committed by GitHub
parent 31b304f232
commit f6f10b54b6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -2,6 +2,7 @@ package util_test
import (
"context"
"encoding/json"
"testing"
sdk "github.com/cosmos/cosmos-sdk/types"
@ -10,19 +11,35 @@ import (
"github.com/planetmint/planetmint-go/testutil/sample"
"github.com/planetmint/planetmint-go/util"
"github.com/planetmint/planetmint-go/util/mocks"
"github.com/planetmint/planetmint-go/x/machine/types"
elements "github.com/rddl-network/elements-rpc"
elementsmocks "github.com/rddl-network/elements-rpc/utils/mocks"
"github.com/stretchr/testify/assert"
)
func TestRegisterNFT(t *testing.T) {
url := "https://testnet-assets.rddl.io/register_asset"
contract := `{"entity":{"domain":"testnet-assets.rddl.io"},"issuer_pubkey":"020000000000000000000000000000000000000000000000000000000000000000","machine_addr":"plmnt10mq5nj8jhh27z7ejnz2ql3nh0qhzjnfvy50877","name":"machine","precision":0,"version":0}`
params := types.DefaultParams()
url := params.AssetRegistryScheme + "://" + params.AssetRegistryDomain + "/" + params.AssetRegistryPath
entity := types.Entity{
Domain: params.AssetRegistryDomain,
}
c := types.Contract{
Entity: entity,
IssuerPubkey: "020000000000000000000000000000000000000000000000000000000000000000",
MachineAddr: "plmnt10mq5nj8jhh27z7ejnz2ql3nh0qhzjnfvy50877",
Name: "machine",
Precision: 0,
Version: 0,
}
contractBytes, err := json.Marshal(c)
assert.NoError(t, err)
contract := string(contractBytes)
asset := "0000000000000000000000000000000000000000000000000000000000000000"
goctx := context.Background()
util.RegisterAssetServiceHTTPClient = &mocks.MockClient{}
err := util.RegisterAsset(goctx, asset, contract, url)
err = util.RegisterAsset(goctx, asset, contract, url)
assert.NoError(t, err)
}
@ -34,7 +51,7 @@ func TestMachineNFTIssuance(t *testing.T) {
machine := moduleobject.Machine(pk, pk, sk, "")
goCtx := sdk.WrapSDKContext(ctx)
err := util.IssueMachineNFT(goCtx, &machine, "https", "testnet-asset.rddl.io", "/register_asset")
params := types.DefaultParams()
err := util.IssueMachineNFT(goCtx, &machine, params.AssetRegistryScheme, params.AssetRegistryDomain, params.AssetRegistryPath)
assert.NoError(t, err)
}