mirror of
https://github.com/OffchainLabs/prysm.git
synced 2026-01-08 23:18:15 -05:00
Gate the withdrawal sweep optimization (using min of validator count and MaxValidatorsPerWithdrawalsSweep) behind a hidden feature flag that defaults to false. Enable the flag for spectests to match consensus spec. The backported changes were from [4788](https://github.com/ethereum/consensus-specs/pull/4788) Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
36 lines
1002 B
Go
36 lines
1002 B
Go
// Package utils allows for easy switching of chain configuration parameters in spec conformity unit tests.
|
|
package utils
|
|
|
|
import (
|
|
"errors"
|
|
"fmt"
|
|
"testing"
|
|
|
|
"github.com/OffchainLabs/prysm/v7/config/features"
|
|
"github.com/OffchainLabs/prysm/v7/config/params"
|
|
)
|
|
|
|
// SetConfig sets the global params for spec tests depending on the option chosen.
|
|
// Provides reset function allowing to get back to the previous configuration at the end of a test.
|
|
func SetConfig(t testing.TB, config string) error {
|
|
params.SetupTestConfigCleanup(t)
|
|
|
|
resetFeatures := features.InitWithReset(&features.Flags{
|
|
LowValcountSweep: true,
|
|
})
|
|
t.Cleanup(resetFeatures)
|
|
|
|
switch config {
|
|
case "minimal":
|
|
params.OverrideBeaconConfig(params.MinimalSpecConfig().Copy())
|
|
return nil
|
|
case "mainnet":
|
|
params.OverrideBeaconConfig(params.MainnetConfig())
|
|
return nil
|
|
case "":
|
|
return errors.New("no config provided")
|
|
default:
|
|
return fmt.Errorf("did not receive a valid config, instead received this %s", config)
|
|
}
|
|
}
|