diff --git a/op-e2e/system/fjord/check_scripts_test.go b/op-e2e/system/fjord/check_scripts_test.go index b6115dbd7e0b8..fb1744dafe8ec 100644 --- a/op-e2e/system/fjord/check_scripts_test.go +++ b/op-e2e/system/fjord/check_scripts_test.go @@ -2,10 +2,12 @@ package fjord import ( "context" + "fmt" "testing" op_e2e "github.com/ethereum-optimism/optimism/op-e2e" + "github.com/ethereum-optimism/optimism/op-e2e/e2eutils/wait" "github.com/ethereum-optimism/optimism/op-e2e/system/e2esys" "github.com/ethereum/go-ethereum/common/hexutil" @@ -23,47 +25,37 @@ func TestCheckFjordScript(t *testing.T) { op_e2e.InitParallel(t) genesisActivation := hexutil.Uint64(0) tests := []struct { - name string - fjordActivation *hexutil.Uint64 - expectErr bool + fjord bool }{ - { - name: "fjord_activated", - fjordActivation: &genesisActivation, - expectErr: false, - }, - { - name: "fjord_unactivated", - fjordActivation: nil, - expectErr: true, - }, + {fjord: true}, + {fjord: false}, } for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - op_e2e.InitParallel(t) + tt := tt + t.Run(fmt.Sprintf("fjord=%t", tt.fjord), func(t *testing.T) { + t.Parallel() log := testlog.Logger(t, log.LevelInfo) - - cfg := e2esys.DefaultSystemConfig(t) - cfg.DeployConfig.L1CancunTimeOffset = &genesisActivation - cfg.DeployConfig.L2GenesisRegolithTimeOffset = &genesisActivation - cfg.DeployConfig.L2GenesisCanyonTimeOffset = &genesisActivation - cfg.DeployConfig.L2GenesisDeltaTimeOffset = &genesisActivation - cfg.DeployConfig.L2GenesisEcotoneTimeOffset = &genesisActivation - - cfg.DeployConfig.L2GenesisFjordTimeOffset = tt.fjordActivation + cfg := e2esys.EcotoneSystemConfig(t, &genesisActivation) + if tt.fjord { + cfg.DeployConfig.L2GenesisFjordTimeOffset = ptr(hexutil.Uint64(cfg.DeployConfig.L2BlockTime)) + } else { + cfg.DeployConfig.L2GenesisFjordTimeOffset = nil + } sys, err := cfg.Start(t) require.NoError(t, err, "Error starting up system") + require.NoError(t, wait.ForNextBlock(context.Background(), sys.NodeClient(e2esys.RoleSeq))) + checkFjordConfig := &fjordChecks.CheckFjordConfig{ Log: log, - L2: sys.NodeClient("sequencer"), + L2: sys.NodeClient(e2esys.RoleSeq), Key: sys.Cfg.Secrets.Alice, Addr: sys.Cfg.Secrets.Addresses().Alice, } - if tt.expectErr { + if !tt.fjord { err = fjordChecks.CheckRIP7212(context.Background(), checkFjordConfig) require.Error(t, err, "expected error for CheckRIP7212") err = fjordChecks.CheckGasPriceOracle(context.Background(), checkFjordConfig) @@ -83,3 +75,5 @@ func TestCheckFjordScript(t *testing.T) { }) } } + +func ptr[T any](t T) *T { return &t }