e2e: avoid unset defaults in generated tests (#7145)

I've observed a few cases in tests that are probably wrong, and added
some tests to cover this.
This commit is contained in:
Sam Kleinman
2021-10-20 12:38:59 -04:00
committed by GitHub
parent a30860a307
commit a8917040a8
2 changed files with 27 additions and 8 deletions

View File

@@ -286,6 +286,13 @@ func generateNode(
Perturb: nodePerturbations.Choose(r),
}
if node.Mempool == "" {
node.Mempool = "v1"
}
if node.PrivvalProtocol == "" {
node.PrivvalProtocol = "file"
}
if startAt > 0 {
node.StateSync = nodeStateSyncs.Choose(r)
if manifest.InitialHeight-startAt <= 5 && node.StateSync == e2e.StateSyncDisabled {

View File

@@ -26,15 +26,27 @@ func TestGenerator(t *testing.T) {
numStateSyncs++
}
t.Run(name, func(t *testing.T) {
if node.StartAt > m.InitialHeight+5 && !node.Stateless() {
require.NotEqual(t, node.StateSync, e2e.StateSyncDisabled)
t.Run("StateSync", func(t *testing.T) {
if node.StartAt > m.InitialHeight+5 && !node.Stateless() {
require.NotEqual(t, node.StateSync, e2e.StateSyncDisabled)
}
if node.StateSync != e2e.StateSyncDisabled {
require.Zero(t, node.Seeds, node.StateSync)
require.True(t, len(node.PersistentPeers) >= 2 || len(node.PersistentPeers) == 0,
"peers: %v", node.PersistentPeers)
}
})
if e2e.Mode(node.Mode) != e2e.ModeLight {
t.Run("Mempool", func(t *testing.T) {
require.NotZero(t, node.Mempool)
})
t.Run("PrivvalProtocol", func(t *testing.T) {
require.NotZero(t, node.PrivvalProtocol)
})
t.Run("BlockSync", func(t *testing.T) {
require.NotZero(t, node.BlockSync)
})
}
if node.StateSync != e2e.StateSyncDisabled {
require.Zero(t, node.Seeds, node.StateSync)
require.True(t, len(node.PersistentPeers) >= 2 || len(node.PersistentPeers) == 0,
"peers: %v", node.PersistentPeers)
}
})
}
require.True(t, numStateSyncs <= 2)