2024-03-04 11:16:09 +00:00
|
|
|
package e2e
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
|
|
|
"os"
|
|
|
|
|
|
|
|
"cosmossdk.io/log"
|
|
|
|
pruningtypes "cosmossdk.io/store/pruning/types"
|
|
|
|
|
|
|
|
dbm "github.com/cosmos/cosmos-db"
|
|
|
|
bam "github.com/cosmos/cosmos-sdk/baseapp"
|
|
|
|
"github.com/cosmos/cosmos-sdk/client/flags"
|
|
|
|
servertypes "github.com/cosmos/cosmos-sdk/server/types"
|
|
|
|
simtestutil "github.com/cosmos/cosmos-sdk/testutil/sims"
|
|
|
|
"github.com/cosmos/cosmos-sdk/types/module/testutil"
|
|
|
|
"github.com/cosmos/cosmos-sdk/x/auth"
|
2024-03-13 04:53:11 +00:00
|
|
|
"github.com/cosmos/cosmos-sdk/x/bank"
|
2024-03-04 11:16:09 +00:00
|
|
|
"github.com/cosmos/cosmos-sdk/x/staking"
|
|
|
|
|
2024-04-01 09:57:26 +00:00
|
|
|
laconicApp "git.vdb.to/cerc-io/laconicd/app"
|
|
|
|
auctionmodule "git.vdb.to/cerc-io/laconicd/x/auction/module"
|
|
|
|
bondmodule "git.vdb.to/cerc-io/laconicd/x/bond/module"
|
|
|
|
registrymodule "git.vdb.to/cerc-io/laconicd/x/registry/module"
|
2024-03-04 11:16:09 +00:00
|
|
|
|
2024-04-01 09:57:26 +00:00
|
|
|
_ "git.vdb.to/cerc-io/laconicd/app/params" // import for side-effects (see init)
|
|
|
|
"git.vdb.to/cerc-io/laconicd/testutil/network"
|
2024-03-04 11:16:09 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
// NewTestNetworkFixture returns a new LaconicApp AppConstructor for network simulation tests
|
|
|
|
func NewTestNetworkFixture() network.TestFixture {
|
|
|
|
dir, err := os.MkdirTemp("", "laconic")
|
|
|
|
if err != nil {
|
|
|
|
panic(fmt.Sprintf("failed creating temporary directory: %v", err))
|
|
|
|
}
|
|
|
|
defer os.RemoveAll(dir)
|
|
|
|
|
|
|
|
app, err := laconicApp.NewLaconicApp(log.NewNopLogger(), dbm.NewMemDB(), nil, true, simtestutil.NewAppOptionsWithFlagHome(dir))
|
|
|
|
if err != nil {
|
|
|
|
panic(fmt.Sprintf("failed to create laconic app: %v", err))
|
|
|
|
}
|
|
|
|
|
|
|
|
appCtr := func(val network.ValidatorI) servertypes.Application {
|
|
|
|
app, err := laconicApp.NewLaconicApp(
|
|
|
|
val.GetCtx().Logger, dbm.NewMemDB(), nil, true,
|
|
|
|
simtestutil.NewAppOptionsWithFlagHome(val.GetCtx().Config.RootDir),
|
|
|
|
bam.SetPruning(pruningtypes.NewPruningOptionsFromString(val.GetAppConfig().Pruning)),
|
|
|
|
bam.SetMinGasPrices(val.GetAppConfig().MinGasPrices),
|
|
|
|
bam.SetChainID(val.GetCtx().Viper.GetString(flags.FlagChainID)),
|
|
|
|
)
|
|
|
|
if err != nil {
|
|
|
|
panic(fmt.Sprintf("failed creating temporary directory: %v", err))
|
|
|
|
}
|
|
|
|
|
|
|
|
return app
|
|
|
|
}
|
|
|
|
|
|
|
|
return network.TestFixture{
|
|
|
|
AppConstructor: appCtr,
|
|
|
|
GenesisState: app.DefaultGenesis(),
|
|
|
|
EncodingConfig: testutil.MakeTestEncodingConfig(
|
|
|
|
auth.AppModuleBasic{},
|
2024-03-13 04:53:11 +00:00
|
|
|
bank.AppModuleBasic{},
|
2024-03-04 11:16:09 +00:00
|
|
|
staking.AppModuleBasic{},
|
|
|
|
auctionmodule.AppModule{},
|
|
|
|
bondmodule.AppModule{},
|
|
|
|
registrymodule.AppModule{},
|
|
|
|
),
|
|
|
|
}
|
|
|
|
}
|