From e9f98711e3f6c1f8c3b4a61ea6a852ba5b68fbff Mon Sep 17 00:00:00 2001 From: theochap Date: Fri, 22 Aug 2025 11:34:24 +0200 Subject: [PATCH] feat(node/e2e-tests): refactor test package --- .../workflows/node_e2e_kurtosis_tests.yaml | 3 ++ .github/workflows/node_e2e_sysgo_tests.yaml | 4 +- tests/node/common/conductor_test.go | 4 +- tests/node/common/init_test.go | 4 +- tests/node/common/p2p_test.go | 10 ++--- tests/node/common/rpc_test.go | 42 +++++++++---------- tests/node/common/sync_test.go | 12 +++--- tests/node/kurtosis/cpu_monitor_test.go | 4 +- tests/node/kurtosis/engine_test.go | 4 +- tests/node/kurtosis/init_test.go | 4 +- tests/node/kurtosis/sync_ws_test.go | 10 ++--- .../{common => restart}/conn_drop_test.go | 6 +-- tests/node/restart/init_test.go | 13 ++++++ .../node/{common => restart}/restart_test.go | 8 ++-- tests/node/sysgo/init_test.go | 4 +- tests/node/{presets => utils}/mixed_preset.go | 2 +- .../mixed_preset_with_conductor.go | 2 +- tests/node/{common => utils}/mod.go | 2 +- 18 files changed, 77 insertions(+), 61 deletions(-) rename tests/node/{common => restart}/conn_drop_test.go (95%) create mode 100644 tests/node/restart/init_test.go rename tests/node/{common => restart}/restart_test.go (94%) rename tests/node/{presets => utils}/mixed_preset.go (99%) rename tests/node/{presets => utils}/mixed_preset_with_conductor.go (98%) rename tests/node/{common => utils}/mod.go (99%) diff --git a/.github/workflows/node_e2e_kurtosis_tests.yaml b/.github/workflows/node_e2e_kurtosis_tests.yaml index 9d710aff06..3ffe496219 100644 --- a/.github/workflows/node_e2e_kurtosis_tests.yaml +++ b/.github/workflows/node_e2e_kurtosis_tests.yaml @@ -74,6 +74,9 @@ jobs: - name: kurtosis tests for node with ${{ matrix.devnet-config }} devnet run: just test-e2e-kurtosis "${{ matrix.devnet-config }}" node/kurtosis + - name: restart tests for node with ${{ matrix.devnet-config }} devnet + run: just test-e2e-kurtosis "${{ matrix.devnet-config }}" node/restart + - # Temp fix # https://github.com/docker/build-push-action/issues/252 # https://github.com/moby/buildkit/issues/1896 diff --git a/.github/workflows/node_e2e_sysgo_tests.yaml b/.github/workflows/node_e2e_sysgo_tests.yaml index b08bb4973b..6c934174f2 100644 --- a/.github/workflows/node_e2e_sysgo_tests.yaml +++ b/.github/workflows/node_e2e_sysgo_tests.yaml @@ -42,6 +42,6 @@ jobs: - name: common tests for node with sysgo orchestrator run: just test-e2e-sysgo node/common - - name: sysgo specific tests for node with sysgo orchestrator - run: just test-e2e-sysgo node/sysgo + - name: restart tests for node with sysgo orchestrator + run: just test-e2e-sysgo node/restart diff --git a/tests/node/common/conductor_test.go b/tests/node/common/conductor_test.go index 1554c9ec64..dbc58d8706 100644 --- a/tests/node/common/conductor_test.go +++ b/tests/node/common/conductor_test.go @@ -13,7 +13,7 @@ import ( "github.com/ethereum-optimism/optimism/op-devstack/stack" "github.com/ethereum-optimism/optimism/op-service/testlog" "github.com/ethereum/go-ethereum/log" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" "github.com/stretchr/testify/require" ) @@ -27,7 +27,7 @@ func TestConductorLeadershipTransfer(gt *testing.T) { t := devtest.SerialT(gt) logger := testlog.Logger(t, log.LevelInfo).With("Test", "TestConductorLeadershipTransfer") - sys := kona_presets.NewMixedOpKonaWithConductors(t) + sys := node_utils.NewMixedOpKonaWithConductors(t) tracer := t.Tracer() ctx := t.Ctx() logger.Info("Started Conductor Leadership Transfer test") diff --git a/tests/node/common/init_test.go b/tests/node/common/init_test.go index 4e7841dff7..a30c74f2f5 100644 --- a/tests/node/common/init_test.go +++ b/tests/node/common/init_test.go @@ -4,10 +4,10 @@ import ( "testing" "github.com/ethereum-optimism/optimism/op-devstack/presets" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" ) // TestMain creates the test-setups against the shared backend func TestMain(m *testing.M) { - presets.DoMain(m, kona_presets.WithMixedOpKona(0, 1, 0, 2)) + presets.DoMain(m, node_utils.WithMixedOpKona(0, 1, 0, 2)) } diff --git a/tests/node/common/p2p_test.go b/tests/node/common/p2p_test.go index 9787bba140..713706ae40 100644 --- a/tests/node/common/p2p_test.go +++ b/tests/node/common/p2p_test.go @@ -9,7 +9,7 @@ import ( "github.com/ethereum-optimism/optimism/op-service/apis" "github.com/ethereum-optimism/optimism/op-supervisor/supervisor/types" "github.com/libp2p/go-libp2p/core/peer" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" "github.com/stretchr/testify/require" ) @@ -58,7 +58,7 @@ func arePeers(t devtest.T, node *dsl.L2CLNode, otherNodeId peer.ID) { func TestP2PMinimal(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLNodes() firstNode := nodes[0] @@ -83,7 +83,7 @@ func TestP2PMinimal(gt *testing.T) { func TestP2PProtocols(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLNodes() @@ -97,7 +97,7 @@ func TestP2PProtocols(gt *testing.T) { func TestP2PChainID(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLKonaNodes() chainID := nodes[0].PeerInfo().ChainID @@ -120,7 +120,7 @@ func TestP2PChainID(gt *testing.T) { func TestNetworkConnectivity(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLNodes() numNodes := len(nodes) diff --git a/tests/node/common/rpc_test.go b/tests/node/common/rpc_test.go index e95082b247..8f6fe6a375 100644 --- a/tests/node/common/rpc_test.go +++ b/tests/node/common/rpc_test.go @@ -9,7 +9,7 @@ import ( "github.com/ethereum-optimism/optimism/op-node/rollup" "github.com/ethereum-optimism/optimism/op-service/apis" "github.com/ethereum/go-ethereum/common" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" "github.com/stretchr/testify/require" ) @@ -17,7 +17,7 @@ import ( func TestP2PPeers(gt *testing.T) { t := devtest.SerialT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) p2pPeersAndPeerStats(t, out) @@ -27,19 +27,19 @@ func TestP2PPeers(gt *testing.T) { } // Ensure that the `opp2p_peers` and `opp2p_self` RPC endpoints return the same information. -func p2pSelfAndPeers(t devtest.T, out *kona_presets.MixedOpKonaPreset) { +func p2pSelfAndPeers(t devtest.T, out *node_utils.MixedOpKonaPreset) { nodes := out.L2CLKonaNodes() var wg sync.WaitGroup for _, node := range nodes { wg.Add(1) go func(node *dsl.L2CLNode) { defer wg.Done() - clRPC := GetNodeRPCEndpoint(node) + clRPC := node_utils.GetNodeRPCEndpoint(node) clName := node.Escape().ID().Key() // Gather the peers for the node. peers := &apis.PeerDump{} - require.NoError(t, SendRPCRequest(clRPC, "opp2p_peers", peers, true), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest(clRPC, "opp2p_peers", peers, true), "failed to send RPC request to node %s: %s", clName) // Check that every peer's info matches the node's info. for _, peer := range peers.Peers { @@ -48,9 +48,9 @@ func p2pSelfAndPeers(t devtest.T, out *kona_presets.MixedOpKonaPreset) { for _, node := range nodes { // We get the peer's info. otherPeerInfo := &apis.PeerInfo{} - otherCLRPC := GetNodeRPCEndpoint(&node) + otherCLRPC := node_utils.GetNodeRPCEndpoint(&node) otherCLName := node.Escape().ID().Key() - require.NoError(t, SendRPCRequest(otherCLRPC, "opp2p_self", otherPeerInfo), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest(otherCLRPC, "opp2p_self", otherPeerInfo), "failed to send RPC request to node %s: %s", clName) // These checks fail for the op-node. It seems that their p2p handler is flaky and doesn't always return the correct peer info. if otherPeerInfo.PeerID == peer.PeerID { @@ -85,21 +85,21 @@ func p2pSelfAndPeers(t devtest.T, out *kona_presets.MixedOpKonaPreset) { } // Check that the `opp2p_peers` and `opp2p_peerStats` RPC endpoints return coherent information. -func p2pPeersAndPeerStats(t devtest.T, out *kona_presets.MixedOpKonaPreset) { +func p2pPeersAndPeerStats(t devtest.T, out *node_utils.MixedOpKonaPreset) { nodes := out.L2CLNodes() var wg sync.WaitGroup for _, node := range nodes { wg.Add(1) go func(node *dsl.L2CLNode) { defer wg.Done() - clRPC := GetNodeRPCEndpoint(node) + clRPC := node_utils.GetNodeRPCEndpoint(node) clName := node.Escape().ID().Key() peers := &apis.PeerDump{} - require.NoError(t, SendRPCRequest(clRPC, "opp2p_peers", peers, true), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest(clRPC, "opp2p_peers", peers, true), "failed to send RPC request to node %s: %s", clName) peerStats := &apis.PeerStats{} - require.NoError(t, SendRPCRequest(clRPC, "opp2p_peerStats", peerStats), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest(clRPC, "opp2p_peerStats", peerStats), "failed to send RPC request to node %s: %s", clName) require.Equal(t, peers.TotalConnected, peerStats.Connected, "totalConnected mismatch node %s", clName) require.Equal(t, len(peers.Peers), int(peers.TotalConnected), "peer count mismatch node %s", clName) @@ -108,14 +108,14 @@ func p2pPeersAndPeerStats(t devtest.T, out *kona_presets.MixedOpKonaPreset) { wg.Wait() } -func p2pBanPeer(t devtest.T, out *kona_presets.MixedOpKonaPreset) { +func p2pBanPeer(t devtest.T, out *node_utils.MixedOpKonaPreset) { nodes := out.L2CLNodes() for _, node := range nodes { - clRPC := GetNodeRPCEndpoint(&node) + clRPC := node_utils.GetNodeRPCEndpoint(&node) clName := node.Escape().ID().Key() peers := &apis.PeerDump{} - require.NoError(t, SendRPCRequest(clRPC, "opp2p_peers", peers, true), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest(clRPC, "opp2p_peers", peers, true), "failed to send RPC request to node %s: %s", clName) connectedPeers := peers.TotalConnected @@ -129,11 +129,11 @@ func p2pBanPeer(t devtest.T, out *kona_presets.MixedOpKonaPreset) { require.NotEmpty(t, peerToBan, "no connected peer found") - require.NoError(t, SendRPCRequest[any](clRPC, "opp2p_blockPeer", nil, peerToBan), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest[any](clRPC, "opp2p_blockPeer", nil, peerToBan), "failed to send RPC request to node %s: %s", clName) // Check that the peer is banned. peersAfterBan := &apis.PeerDump{} - require.NoError(t, SendRPCRequest(clRPC, "opp2p_peers", peersAfterBan, true), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest(clRPC, "opp2p_peers", peersAfterBan, true), "failed to send RPC request to node %s: %s", clName) require.Equal(t, connectedPeers, peersAfterBan.TotalConnected, "totalConnected mismatch node %s", clName) @@ -149,11 +149,11 @@ func p2pBanPeer(t devtest.T, out *kona_presets.MixedOpKonaPreset) { require.True(t, contains, "peer %s not banned", peerToBan) // Try to unban the peer. - require.NoError(t, SendRPCRequest[any](clRPC, "opp2p_unblockPeer", nil, peerToBan), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest[any](clRPC, "opp2p_unblockPeer", nil, peerToBan), "failed to send RPC request to node %s: %s", clName) // Check that the peer is unbanned. peersAfterUnban := &apis.PeerDump{} - require.NoError(t, SendRPCRequest(clRPC, "opp2p_peers", peersAfterUnban, true), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest(clRPC, "opp2p_peers", peersAfterUnban, true), "failed to send RPC request to node %s: %s", clName) require.Equal(t, connectedPeers, peersAfterUnban.TotalConnected, "totalConnected mismatch node %s", clName) require.NotContains(t, peersAfterUnban.BannedPeers, peerToBan, "peer %s is banned", peerToBan) @@ -161,11 +161,11 @@ func p2pBanPeer(t devtest.T, out *kona_presets.MixedOpKonaPreset) { } func rollupConfig(t devtest.T, node *dsl.L2CLNode) *rollup.Config { - clRPC := GetNodeRPCEndpoint(node) + clRPC := node_utils.GetNodeRPCEndpoint(node) clName := node.Escape().ID().Key() rollupConfig := &rollup.Config{} - require.NoError(t, SendRPCRequest(clRPC, "optimism_rollupConfig", rollupConfig), "failed to send RPC request to node %s: %s", clName) + require.NoError(t, node_utils.SendRPCRequest(clRPC, "optimism_rollupConfig", rollupConfig), "failed to send RPC request to node %s: %s", clName) return rollupConfig } @@ -181,7 +181,7 @@ func rollupConfigMatches(t devtest.T, configA *rollup.Config, configB *rollup.Co func TestRollupConfig(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) rollupConfigs := make([]*rollup.Config, 0) diff --git a/tests/node/common/sync_test.go b/tests/node/common/sync_test.go index d6acad39ce..074462fb1e 100644 --- a/tests/node/common/sync_test.go +++ b/tests/node/common/sync_test.go @@ -8,14 +8,14 @@ import ( "github.com/ethereum-optimism/optimism/op-devstack/devtest" "github.com/ethereum-optimism/optimism/op-devstack/dsl" "github.com/ethereum-optimism/optimism/op-supervisor/supervisor/types" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" ) // Check that all the nodes in the network are synced to the local safe block and can catch up to the sequencer node. func TestL2SafeSync(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLNodes() @@ -33,7 +33,7 @@ func TestL2SafeSync(gt *testing.T) { func TestL2UnsafeSync(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLNodes() @@ -52,7 +52,7 @@ func TestL2FinalizedSync(gt *testing.T) { t := devtest.ParallelT(gt) t.Skip("Skipping finalized sync test") - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLNodes() @@ -66,7 +66,7 @@ func TestL2FinalizedSync(gt *testing.T) { } func isSequencer(node *dsl.L2CLNode) bool { - return strings.Contains(node.Escape().ID().Key(), string(kona_presets.Sequencer)) + return strings.Contains(node.Escape().ID().Key(), string(node_utils.Sequencer)) } func filterSequencer(nodes []dsl.L2CLNode) []dsl.L2CLNode { @@ -82,7 +82,7 @@ func filterSequencer(nodes []dsl.L2CLNode) []dsl.L2CLNode { func TestSyncWithSequencer(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLValidatorNodes() diff --git a/tests/node/kurtosis/cpu_monitor_test.go b/tests/node/kurtosis/cpu_monitor_test.go index 3281d5410e..fa350ef7dd 100644 --- a/tests/node/kurtosis/cpu_monitor_test.go +++ b/tests/node/kurtosis/cpu_monitor_test.go @@ -12,7 +12,7 @@ import ( "github.com/ethereum-optimism/optimism/op-devstack/dsl" "github.com/ethereum-optimism/optimism/op-supervisor/supervisor/types" "github.com/kurtosis-tech/kurtosis/api/golang/engine/lib/kurtosis_context" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" "github.com/stretchr/testify/require" ) @@ -59,7 +59,7 @@ func GetCPUStats(t devtest.T, ctx context.Context, serviceName string) { // Run this test only in kurtosis. func TestKurtosisCPUMonitor(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) out.T.Gate().Equal(os.Getenv("DEVSTACK_ORCHESTRATOR"), "sysext", "this test is only valid in kurtosis") diff --git a/tests/node/kurtosis/engine_test.go b/tests/node/kurtosis/engine_test.go index fe57590b4f..4e51307092 100644 --- a/tests/node/kurtosis/engine_test.go +++ b/tests/node/kurtosis/engine_test.go @@ -8,14 +8,14 @@ import ( "github.com/ethereum-optimism/optimism/op-devstack/devtest" "github.com/ethereum-optimism/optimism/op-devstack/dsl" "github.com/ethereum-optimism/optimism/op-supervisor/supervisor/types" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" "github.com/stretchr/testify/require" ) func TestEngine(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) out.T.Gate().Equal(os.Getenv("DEVSTACK_ORCHESTRATOR"), "sysext", "this test is only valid in kurtosis") diff --git a/tests/node/kurtosis/init_test.go b/tests/node/kurtosis/init_test.go index f81b5905bd..23096ecd9c 100644 --- a/tests/node/kurtosis/init_test.go +++ b/tests/node/kurtosis/init_test.go @@ -4,10 +4,10 @@ import ( "testing" "github.com/ethereum-optimism/optimism/op-devstack/presets" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" ) // TestMain creates the test-setups against the shared backend func TestMain(m *testing.M) { - presets.DoMain(m, kona_presets.WithMixedOpKona(0, 1, 0, 2)) + presets.DoMain(m, node_utils.WithMixedOpKona(0, 1, 0, 2)) } diff --git a/tests/node/kurtosis/sync_ws_test.go b/tests/node/kurtosis/sync_ws_test.go index 197720ac61..fab2c67ebe 100644 --- a/tests/node/kurtosis/sync_ws_test.go +++ b/tests/node/kurtosis/sync_ws_test.go @@ -10,7 +10,7 @@ import ( "github.com/ethereum-optimism/optimism/op-devstack/dsl" "github.com/ethereum-optimism/optimism/op-service/eth" "github.com/ethereum/go-ethereum/common/hexutil" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" "github.com/stretchr/testify/require" ) @@ -25,7 +25,7 @@ func TestSyncUnsafeBecomesSafe(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) out.T.Gate().Equal(os.Getenv("DEVSTACK_ORCHESTRATOR"), "sysext", "this test is only valid in kurtosis") @@ -78,7 +78,7 @@ func TestSyncUnsafeBecomesSafe(gt *testing.T) { func TestSyncUnsafe(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) out.T.Gate().Equal(os.Getenv("DEVSTACK_ORCHESTRATOR"), "sysext", "this test is only valid in kurtosis") @@ -134,7 +134,7 @@ func TestSyncUnsafe(gt *testing.T) { func TestSyncSafe(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) out.T.Gate().Equal(os.Getenv("DEVSTACK_ORCHESTRATOR"), "sysext", "this test is only valid in kurtosis") @@ -190,7 +190,7 @@ func TestSyncSafe(gt *testing.T) { func TestSyncFinalized(gt *testing.T) { t := devtest.ParallelT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) out.T.Gate().Equal(os.Getenv("DEVSTACK_ORCHESTRATOR"), "sysext", "this test is only valid in kurtosis") diff --git a/tests/node/common/conn_drop_test.go b/tests/node/restart/conn_drop_test.go similarity index 95% rename from tests/node/common/conn_drop_test.go rename to tests/node/restart/conn_drop_test.go index ae9920b257..4eaf56a3bf 100644 --- a/tests/node/common/conn_drop_test.go +++ b/tests/node/restart/conn_drop_test.go @@ -1,4 +1,4 @@ -package node +package node_restart import ( "sync" @@ -8,14 +8,14 @@ import ( "github.com/ethereum-optimism/optimism/op-devstack/devtest" "github.com/ethereum-optimism/optimism/op-devstack/dsl" "github.com/ethereum-optimism/optimism/op-supervisor/supervisor/types" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" ) // Ensure that kona-nodes reconnect to the sequencer and sync properly when the connection is dropped. func TestConnDropSync(gt *testing.T) { t := devtest.SerialT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLKonaValidatorNodes sequencerNodes := out.L2CLSequencerNodes() diff --git a/tests/node/restart/init_test.go b/tests/node/restart/init_test.go new file mode 100644 index 0000000000..4a4096cdc3 --- /dev/null +++ b/tests/node/restart/init_test.go @@ -0,0 +1,13 @@ +package node_restart + +import ( + "testing" + + "github.com/ethereum-optimism/optimism/op-devstack/presets" + node_utils "github.com/op-rs/kona/node/utils" +) + +// TestMain creates the test-setups against the shared backend +func TestMain(m *testing.M) { + presets.DoMain(m, node_utils.WithMixedOpKona(0, 1, 0, 2)) +} diff --git a/tests/node/common/restart_test.go b/tests/node/restart/restart_test.go similarity index 94% rename from tests/node/common/restart_test.go rename to tests/node/restart/restart_test.go index 7af54ff450..320962bd2a 100644 --- a/tests/node/common/restart_test.go +++ b/tests/node/restart/restart_test.go @@ -1,4 +1,4 @@ -package node +package node_restart import ( "context" @@ -10,14 +10,14 @@ import ( "github.com/ethereum-optimism/optimism/op-devstack/dsl" "github.com/ethereum-optimism/optimism/op-service/eth" "github.com/ethereum-optimism/optimism/op-supervisor/supervisor/types" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" ) // Ensure that kona-nodes reconnect to the sequencer and sync properly when the connection is dropped. func TestRestartSync(gt *testing.T) { t := devtest.SerialT(gt) - out := kona_presets.NewMixedOpKona(t) + out := node_utils.NewMixedOpKona(t) nodes := out.L2CLKonaValidatorNodes sequencerNodes := out.L2CLSequencerNodes() @@ -45,7 +45,7 @@ func TestRestartSync(gt *testing.T) { // Ensure that the node is stopped // Check that calling any rpc method returns an error - rpc := GetNodeRPCEndpoint(node) + rpc := node_utils.GetNodeRPCEndpoint(node) var out *eth.SyncStatus err := rpc.CallContext(context.Background(), &out, "opp2p_syncStatus") t.Require().Error(err, "expected node %s to be stopped", clName) diff --git a/tests/node/sysgo/init_test.go b/tests/node/sysgo/init_test.go index 19711632e3..aa97da2cd6 100644 --- a/tests/node/sysgo/init_test.go +++ b/tests/node/sysgo/init_test.go @@ -4,10 +4,10 @@ import ( "testing" "github.com/ethereum-optimism/optimism/op-devstack/presets" - kona_presets "github.com/op-rs/kona/node/presets" + node_utils "github.com/op-rs/kona/node/utils" ) // TestMain creates the test-setups against the shared backend func TestMain(m *testing.M) { - presets.DoMain(m, kona_presets.WithMixedOpKona(0, 1, 0, 2)) + presets.DoMain(m, node_utils.WithMixedOpKona(0, 1, 0, 2)) } diff --git a/tests/node/presets/mixed_preset.go b/tests/node/utils/mixed_preset.go similarity index 99% rename from tests/node/presets/mixed_preset.go rename to tests/node/utils/mixed_preset.go index 980aa28c6f..8931b68f19 100644 --- a/tests/node/presets/mixed_preset.go +++ b/tests/node/utils/mixed_preset.go @@ -1,4 +1,4 @@ -package kona_presets +package node_utils import ( "fmt" diff --git a/tests/node/presets/mixed_preset_with_conductor.go b/tests/node/utils/mixed_preset_with_conductor.go similarity index 98% rename from tests/node/presets/mixed_preset_with_conductor.go rename to tests/node/utils/mixed_preset_with_conductor.go index 2a493b86b2..e8b11c82de 100644 --- a/tests/node/presets/mixed_preset_with_conductor.go +++ b/tests/node/utils/mixed_preset_with_conductor.go @@ -1,4 +1,4 @@ -package kona_presets +package node_utils import ( "github.com/ethereum-optimism/optimism/op-devstack/devtest" diff --git a/tests/node/common/mod.go b/tests/node/utils/mod.go similarity index 99% rename from tests/node/common/mod.go rename to tests/node/utils/mod.go index 617654dc22..0d86e1d43b 100644 --- a/tests/node/common/mod.go +++ b/tests/node/utils/mod.go @@ -1,4 +1,4 @@ -package node +package node_utils import ( "context"