* Added cli integration base setup * Added cmd to simapp * Fixed ci-lint issues * Fixed ci-lint issues * Addressed changes in Makefile * Updated simd to latest * Removed testnet and replay commands * Modified tx command for simcli * Did code cleanup * Removed duplication in Makefile * Refactored cli_test * Added build-sim to Makefile * Added test-cli to circleci * Added tests for staking txns * Addressed format issues * refctored tests code * Added tests for send, staking * Removed test_hepers file * Moved test_cover to contrib * Added codec in fixtures * Migrated tests to respective modules * Exported helper methods * Moved helpers to bank * Added codec to fixtures * Migrated tests to modules * Removed auth helpers from staking * Did minor code cleanup * Added test-cli to Makefile * Updated github actions * Did code refactor * Fixed github actions for cli-test * Added tests for recover keys and fee deduction * Did minor code cleanup * Added build flag to cli_tests * Moved cli_test to tests * Modified path in Makefile * Updated codec std in fixtures * Added doc for cli tests * Remove ibc genesis validation * Fix issue number * Added missing imports * Add tests for distribution and simd * Modified naming for test functions * Added test for withdraw rewards * Modified test function names * Fixed import format * Migrated helpers to package cli * Fixed github test actions * Fixed test coverage in actions * Added build sim to actions * Apply Alessio patch for tests * Removed unused imports * Added init for go tests * try fix tests * goimports what wasn't goimports'd * try fix ci * add relevant tags to integration tests * run integration tests separately * use go build -o flag and let compiler gemerate the binary with the right extension for the HOST platform rename cli-test to test-integration * update ci * rename Co-authored-by: atheesh <atheesh1> Co-authored-by: kaustubhkapatral <54210167+kaustubhkapatral@users.noreply.github.com> Co-authored-by: Aaron Craelius <aaron@regen.network> Co-authored-by: anilCSE <anil@vitwit.com> Co-authored-by: Alessio Treglia <alessio@tendermint.com>
71 lines
1.7 KiB
Go
71 lines
1.7 KiB
Go
package cli
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
// InitFixtures is called at the beginning of a test and initializes a chain
|
|
// with 1 validator.
|
|
func InitFixtures(t *testing.T) (f *Fixtures) {
|
|
f = NewFixtures(t)
|
|
|
|
// reset test state
|
|
f.UnsafeResetAll()
|
|
|
|
f.CLIConfig("keyring-backend", "test")
|
|
|
|
// ensure keystore has foo and bar keys
|
|
f.KeysDelete(KeyFoo)
|
|
f.KeysDelete(KeyBar)
|
|
f.KeysDelete(KeyBar)
|
|
f.KeysDelete(KeyFooBarBaz)
|
|
f.KeysAdd(KeyFoo)
|
|
f.KeysAdd(KeyBar)
|
|
f.KeysAdd(KeyBaz)
|
|
f.KeysAdd(KeyVesting)
|
|
f.KeysAdd(KeyFooBarBaz, "--multisig-threshold=2", fmt.Sprintf(
|
|
"--multisig=%s,%s,%s", KeyFoo, KeyBar, KeyBaz))
|
|
|
|
// ensure that CLI output is in JSON format
|
|
f.CLIConfig("output", "json")
|
|
|
|
// NOTE: SDInit sets the ChainID
|
|
f.SDInit(KeyFoo)
|
|
|
|
f.CLIConfig("chain-id", f.ChainID)
|
|
f.CLIConfig("broadcast-mode", "block")
|
|
f.CLIConfig("trust-node", "true")
|
|
|
|
// start an account with tokens
|
|
f.AddGenesisAccount(f.KeyAddress(KeyFoo), StartCoins)
|
|
f.AddGenesisAccount(
|
|
f.KeyAddress(KeyVesting), StartCoins,
|
|
fmt.Sprintf("--vesting-amount=%s", VestingCoins),
|
|
fmt.Sprintf("--vesting-start-time=%d", time.Now().UTC().UnixNano()),
|
|
fmt.Sprintf("--vesting-end-time=%d", time.Now().Add(60*time.Second).UTC().UnixNano()),
|
|
)
|
|
|
|
f.GenTx(KeyFoo)
|
|
f.CollectGenTxs()
|
|
|
|
return f
|
|
}
|
|
|
|
// Cleanup is meant to be run at the end of a test to clean up an remaining test state
|
|
func (f *Fixtures) Cleanup(dirs ...string) {
|
|
clean := append(dirs, f.RootDir)
|
|
for _, d := range clean {
|
|
require.NoError(f.T, os.RemoveAll(d))
|
|
}
|
|
}
|
|
|
|
// Flags returns the flags necessary for making most CLI calls
|
|
func (f *Fixtures) Flags() string {
|
|
return fmt.Sprintf("--home=%s --node=%s", f.SimcliHome, f.RPCAddr)
|
|
}
|