stake test candidate query
This commit is contained in:
parent
09fe4c0262
commit
d344de3b62
|
@ -12,46 +12,48 @@ import (
|
||||||
"github.com/stretchr/testify/require"
|
"github.com/stretchr/testify/require"
|
||||||
|
|
||||||
"github.com/cosmos/cosmos-sdk/client/keys"
|
"github.com/cosmos/cosmos-sdk/client/keys"
|
||||||
|
"github.com/cosmos/cosmos-sdk/cmd/gaia/app"
|
||||||
"github.com/cosmos/cosmos-sdk/server"
|
"github.com/cosmos/cosmos-sdk/server"
|
||||||
"github.com/cosmos/cosmos-sdk/tests"
|
"github.com/cosmos/cosmos-sdk/tests"
|
||||||
"github.com/cosmos/cosmos-sdk/x/auth"
|
"github.com/cosmos/cosmos-sdk/x/auth"
|
||||||
|
"github.com/cosmos/cosmos-sdk/x/stake"
|
||||||
crypto "github.com/tendermint/go-crypto"
|
crypto "github.com/tendermint/go-crypto"
|
||||||
crkeys "github.com/tendermint/go-crypto/keys"
|
crkeys "github.com/tendermint/go-crypto/keys"
|
||||||
)
|
)
|
||||||
|
|
||||||
//func TestGaiaCLISend(t *testing.T) {
|
func TestGaiaCLISend(t *testing.T) {
|
||||||
|
|
||||||
//tests.ExecuteT(t, "gaiad unsafe_reset_all")
|
tests.ExecuteT(t, "gaiad unsafe_reset_all")
|
||||||
//pass := "1234567890"
|
pass := "1234567890"
|
||||||
//executeWrite(t, "gaiacli keys delete foo", pass)
|
executeWrite(t, "gaiacli keys delete foo", pass)
|
||||||
//executeWrite(t, "gaiacli keys delete bar", pass)
|
executeWrite(t, "gaiacli keys delete bar", pass)
|
||||||
//masterKey, chainID := executeInit(t, "gaiad init")
|
masterKey, chainID := executeInit(t, "gaiad init")
|
||||||
|
|
||||||
//// get a free port, also setup some common flags
|
// get a free port, also setup some common flags
|
||||||
//servAddr := server.FreeTCPAddr(t)
|
servAddr := server.FreeTCPAddr(t)
|
||||||
//flags := fmt.Sprintf("--node=%v --chain-id=%v", servAddr, chainID)
|
flags := fmt.Sprintf("--node=%v --chain-id=%v", servAddr, chainID)
|
||||||
|
|
||||||
//// start gaiad server
|
// start gaiad server
|
||||||
//cmd, _, _ := tests.GoExecuteT(t, fmt.Sprintf("gaiad start --rpc.laddr=%v", servAddr))
|
cmd, _, _ := tests.GoExecuteT(t, fmt.Sprintf("gaiad start --rpc.laddr=%v", servAddr))
|
||||||
//defer cmd.Process.Kill()
|
defer cmd.Process.Kill()
|
||||||
|
|
||||||
//executeWrite(t, "gaiacli keys add foo --recover", pass, masterKey)
|
executeWrite(t, "gaiacli keys add foo --recover", pass, masterKey)
|
||||||
//executeWrite(t, "gaiacli keys add bar", pass)
|
executeWrite(t, "gaiacli keys add bar", pass)
|
||||||
|
|
||||||
//fooAddr, _ := executeGetAddr(t, "gaiacli keys show foo --output=json")
|
fooAddr, _ := executeGetAddr(t, "gaiacli keys show foo --output=json")
|
||||||
//barAddr, _ := executeGetAddr(t, "gaiacli keys show bar --output=json")
|
barAddr, _ := executeGetAddr(t, "gaiacli keys show bar --output=json")
|
||||||
|
|
||||||
//fooAcc := executeGetAccount(t, fmt.Sprintf("gaiacli account %v %v", fooAddr, flags))
|
fooAcc := executeGetAccount(t, fmt.Sprintf("gaiacli account %v %v", fooAddr, flags))
|
||||||
//assert.Equal(t, int64(100000), fooAcc.GetCoins().AmountOf("fermion"))
|
assert.Equal(t, int64(100000), fooAcc.GetCoins().AmountOf("fermion"))
|
||||||
|
|
||||||
//executeWrite(t, fmt.Sprintf("gaiacli send %v --amount=10fermion --to=%v --name=foo", flags, barAddr), pass)
|
executeWrite(t, fmt.Sprintf("gaiacli send %v --amount=10fermion --to=%v --name=foo", flags, barAddr), pass)
|
||||||
//time.Sleep(time.Second * 3) // waiting for some blocks to pass
|
time.Sleep(time.Second * 3) // waiting for some blocks to pass
|
||||||
|
|
||||||
//barAcc := executeGetAccount(t, fmt.Sprintf("gaiacli account %v %v", barAddr, flags))
|
barAcc := executeGetAccount(t, fmt.Sprintf("gaiacli account %v %v", barAddr, flags))
|
||||||
//assert.Equal(t, int64(10), barAcc.GetCoins().AmountOf("fermion"))
|
assert.Equal(t, int64(10), barAcc.GetCoins().AmountOf("fermion"))
|
||||||
//fooAcc = executeGetAccount(t, fmt.Sprintf("gaiacli account %v %v", fooAddr, flags))
|
fooAcc = executeGetAccount(t, fmt.Sprintf("gaiacli account %v %v", fooAddr, flags))
|
||||||
//assert.Equal(t, int64(99990), fooAcc.GetCoins().AmountOf("fermion"))
|
assert.Equal(t, int64(99990), fooAcc.GetCoins().AmountOf("fermion"))
|
||||||
//}
|
}
|
||||||
|
|
||||||
func TestGaiaCLIDeclareCandidacy(t *testing.T) {
|
func TestGaiaCLIDeclareCandidacy(t *testing.T) {
|
||||||
|
|
||||||
|
@ -94,9 +96,11 @@ func TestGaiaCLIDeclareCandidacy(t *testing.T) {
|
||||||
declStr += fmt.Sprintf(" --moniker=%v", "foo-vally")
|
declStr += fmt.Sprintf(" --moniker=%v", "foo-vally")
|
||||||
fmt.Printf("debug declStr: %v\n", declStr)
|
fmt.Printf("debug declStr: %v\n", declStr)
|
||||||
executeWrite(t, declStr, pass)
|
executeWrite(t, declStr, pass)
|
||||||
fooAcc = executeGetAccount(t, fmt.Sprintf("gaiacli account %v %v", fooAddr, flags))
|
|
||||||
time.Sleep(time.Second * 3) // waiting for some blocks to pass
|
time.Sleep(time.Second * 3) // waiting for some blocks to pass
|
||||||
|
fooAcc = executeGetAccount(t, fmt.Sprintf("gaiacli account %v %v", fooAddr, flags))
|
||||||
assert.Equal(t, int64(99997), fooAcc.GetCoins().AmountOf("fermion"))
|
assert.Equal(t, int64(99997), fooAcc.GetCoins().AmountOf("fermion"))
|
||||||
|
candidate := executeGetCandidate(t, fmt.Sprintf("gaiacli candidate %v --address=%v", flags, fooAddr))
|
||||||
|
assert.Equal(t, candidate.Address.String(), fooAddr)
|
||||||
}
|
}
|
||||||
|
|
||||||
func executeWrite(t *testing.T, cmdStr string, writes ...string) {
|
func executeWrite(t *testing.T, cmdStr string, writes ...string) {
|
||||||
|
@ -142,7 +146,11 @@ func executeGetAddr(t *testing.T, cmdStr string) (addr, pubKey string) {
|
||||||
var info crkeys.Info
|
var info crkeys.Info
|
||||||
keys.UnmarshalJSON([]byte(out), &info)
|
keys.UnmarshalJSON([]byte(out), &info)
|
||||||
pubKey = hex.EncodeToString(info.PubKey.(crypto.PubKeyEd25519).Bytes())
|
pubKey = hex.EncodeToString(info.PubKey.(crypto.PubKeyEd25519).Bytes())
|
||||||
|
|
||||||
|
// TODO this is really wierd, also error that not 64 characters!
|
||||||
pubKey = strings.TrimLeft(pubKey, "1624de6220")
|
pubKey = strings.TrimLeft(pubKey, "1624de6220")
|
||||||
|
pubKey = fmt.Sprintf("%064v", pubKey)
|
||||||
|
|
||||||
fmt.Printf("debug pubKey: %v\n", pubKey)
|
fmt.Printf("debug pubKey: %v\n", pubKey)
|
||||||
addr = info.PubKey.Address().String()
|
addr = info.PubKey.Address().String()
|
||||||
fmt.Printf("debug addr: %v\n", addr)
|
fmt.Printf("debug addr: %v\n", addr)
|
||||||
|
@ -160,3 +168,12 @@ func executeGetAccount(t *testing.T, cmdStr string) auth.BaseAccount {
|
||||||
require.NoError(t, err, "value %v, err %v", string(value), err)
|
require.NoError(t, err, "value %v, err %v", string(value), err)
|
||||||
return acc
|
return acc
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func executeGetCandidate(t *testing.T, cmdStr string) stake.Candidate {
|
||||||
|
out := tests.ExecuteT(t, cmdStr)
|
||||||
|
var candidate stake.Candidate
|
||||||
|
cdc := app.MakeCodec()
|
||||||
|
err := cdc.UnmarshalJSON([]byte(out), &candidate)
|
||||||
|
require.NoError(t, err, "out %v, err %v", out, err)
|
||||||
|
return candidate
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue