feat: only run one seed in determinism tests

This commit is contained in:
Kevin Davis 2020-04-16 16:58:00 -04:00
parent 3ab264b5b7
commit decbbd4c00

View File

@ -662,38 +662,33 @@ func TestAppStateDeterminism(t *testing.T) {
config.OnOperation = false config.OnOperation = false
config.AllInvariants = false config.AllInvariants = false
numSeeds := 1
numTimesToRunPerSeed := 2 numTimesToRunPerSeed := 2
appHashList := make([]json.RawMessage, numTimesToRunPerSeed) appHashList := make([]json.RawMessage, numTimesToRunPerSeed)
for i := 0; i < numSeeds; i++ { for j := 0; j < numTimesToRunPerSeed; j++ {
config.Seed = rand.Int63() logger := log.NewNopLogger()
db := dbm.NewMemDB()
app := NewApp(logger, db, nil, true, simapp.FlagPeriodValue, interBlockCacheOpt())
for j := 0; j < numTimesToRunPerSeed; j++ { fmt.Printf(
logger := log.NewNopLogger() "running non-determinism simulation; seed %d: attempt: %d/%d\n",
db := dbm.NewMemDB() config.Seed, j+1, numTimesToRunPerSeed,
app := NewApp(logger, db, nil, true, simapp.FlagPeriodValue, interBlockCacheOpt()) )
fmt.Printf( _, _, err := simulation.SimulateFromSeed(
"running non-determinism simulation; seed %d: %d/%d, attempt: %d/%d\n", t, os.Stdout, app.BaseApp, simapp.AppStateFn(app.Codec(), app.sm),
config.Seed, i+1, numSeeds, j+1, numTimesToRunPerSeed, testAndRunTxs(app, config), app.ModuleAccountAddrs(), config,
)
require.NoError(t, err)
appHash := app.LastCommitID().Hash
appHashList[j] = appHash
if j != 0 {
require.Equal(
t, appHashList[0], appHashList[j],
"non-determinism in seed %d: attempt: %d/%d\n", config.Seed, j+1, numTimesToRunPerSeed,
) )
_, _, err := simulation.SimulateFromSeed(
t, os.Stdout, app.BaseApp, simapp.AppStateFn(app.Codec(), app.sm),
testAndRunTxs(app, config), app.ModuleAccountAddrs(), config,
)
require.NoError(t, err)
appHash := app.LastCommitID().Hash
appHashList[j] = appHash
if j != 0 {
require.Equal(
t, appHashList[0], appHashList[j],
"non-determinism in seed %d: %d/%d, attempt: %d/%d\n", config.Seed, i+1, numSeeds, j+1, numTimesToRunPerSeed,
)
}
} }
} }
} }