@@ -216,15 +216,15 @@ func setupSequencerWithFullNode(t *testing.T, sut *SystemUnderTest, sequencerHom
216216 // Common setup for both sequencer and full node
217217 jwtSecret , fullNodeJwtSecret , genesisHash := setupCommonEVMTest (t , sut , true )
218218
219- // Setup sequencer
220- setupSequencerNode (t , sut , sequencerHome , jwtSecret , genesisHash )
219+ // Setup sequencer (use nil ports for backward compatibility)
220+ setupSequencerNode (t , sut , sequencerHome , jwtSecret , genesisHash , nil )
221221 t .Log ("Sequencer node is up" )
222222
223223 // Get P2P address and setup full node
224224 sequencerP2PAddress := getNodeP2PAddress (t , sut , sequencerHome )
225225 t .Logf ("Sequencer P2P address: %s" , sequencerP2PAddress )
226226
227- setupFullNode (t , sut , fullNodeHome , sequencerHome , fullNodeJwtSecret , genesisHash , sequencerP2PAddress )
227+ setupFullNode (t , sut , fullNodeHome , sequencerHome , fullNodeJwtSecret , genesisHash , sequencerP2PAddress , nil )
228228 t .Log ("Full node is up" )
229229
230230 // Connect to both EVM instances
@@ -652,21 +652,27 @@ func TestEvmFullNodeBlockPropagationE2E(t *testing.T) {
652652func setupSequencerWithFullNodeLazy (t * testing.T , sut * SystemUnderTest , sequencerHome , fullNodeHome string ) (* ethclient.Client , * ethclient.Client ) {
653653 t .Helper ()
654654
655- // Common setup for both sequencer and full node
656- jwtSecret , fullNodeJwtSecret , genesisHash := setupCommonEVMTest (t , sut , true )
655+ // Generate unique ports for this test instance to avoid conflicts
656+ ports , err := generateTestPorts ()
657+ require .NoError (t , err , "Should be able to generate test ports" )
658+ t .Logf ("Generated test ports - Rollkit RPC: %s, P2P: %s, Full Node RPC: %s, P2P: %s, DA: %s (EVM engine ports fixed at %s/%s)" ,
659+ ports .RollkitRPCPort , ports .RollkitP2PPort , ports .FullNodeRPCPort , ports .FullNodeP2PPort , ports .DAPort , SequencerEthPort , FullNodeEthPort )
660+
661+ // Common setup for both sequencer and full node with dynamic DA port
662+ jwtSecret , fullNodeJwtSecret , genesisHash := setupCommonEVMTest (t , sut , true , ports .DAPort )
657663
658- // Setup sequencer in lazy mode
659- setupSequencerNodeLazy (t , sut , sequencerHome , jwtSecret , genesisHash )
664+ // Setup sequencer in lazy mode with dynamic ports
665+ setupSequencerNodeLazy (t , sut , sequencerHome , jwtSecret , genesisHash , ports )
660666 t .Log ("Sequencer node (lazy mode) is up" )
661667
662668 // Get P2P address and setup full node
663- sequencerP2PAddress := getNodeP2PAddress (t , sut , sequencerHome )
669+ sequencerP2PAddress := getNodeP2PAddress (t , sut , sequencerHome , ports . RollkitRPCPort )
664670 t .Logf ("Sequencer P2P address: %s" , sequencerP2PAddress )
665671
666- setupFullNode (t , sut , fullNodeHome , sequencerHome , fullNodeJwtSecret , genesisHash , sequencerP2PAddress )
672+ setupFullNode (t , sut , fullNodeHome , sequencerHome , fullNodeJwtSecret , genesisHash , sequencerP2PAddress , ports )
667673 t .Log ("Full node is up" )
668674
669- // Connect to both EVM instances
675+ // Connect to both EVM instances using fixed EVM engine ports
670676 sequencerClient , err := ethclient .Dial (SequencerEthURL )
671677 require .NoError (t , err , "Should be able to connect to sequencer EVM" )
672678
@@ -1042,20 +1048,20 @@ func testSequencerFullNodeRestart(t *testing.T, initialLazyMode, restartLazyMode
10421048 // Get JWT secrets and setup common components first
10431049 jwtSecret , fullNodeJwtSecret , genesisHash := setupCommonEVMTest (t , sut , true )
10441050
1045- // Setup sequencer based on initial mode
1051+ // Setup sequencer based on initial mode (use nil ports for backward compatibility)
10461052 if initialLazyMode {
1047- setupSequencerNodeLazy (t , sut , sequencerHome , jwtSecret , genesisHash )
1053+ setupSequencerNodeLazy (t , sut , sequencerHome , jwtSecret , genesisHash , nil )
10481054 t .Log ("Sequencer node (lazy mode) is up" )
10491055 } else {
1050- setupSequencerNode (t , sut , sequencerHome , jwtSecret , genesisHash )
1056+ setupSequencerNode (t , sut , sequencerHome , jwtSecret , genesisHash , nil )
10511057 t .Log ("Sequencer node is up" )
10521058 }
10531059
10541060 // Get P2P address and setup full node
10551061 sequencerP2PAddress := getNodeP2PAddress (t , sut , sequencerHome )
10561062 t .Logf ("Sequencer P2P address: %s" , sequencerP2PAddress )
10571063
1058- setupFullNode (t , sut , fullNodeHome , sequencerHome , fullNodeJwtSecret , genesisHash , sequencerP2PAddress )
1064+ setupFullNode (t , sut , fullNodeHome , sequencerHome , fullNodeJwtSecret , genesisHash , sequencerP2PAddress , nil )
10591065 t .Log ("Full node is up" )
10601066
10611067 // Connect to both EVM instances
0 commit comments