From d1360e26f732b2c606457f423d5c9e47acff4aa5 Mon Sep 17 00:00:00 2001 From: gabrielmer <101006718+gabrielmer@users.noreply.github.com> Date: Thu, 24 Jul 2025 16:18:58 +0200 Subject: [PATCH] chore: adding double start and stop tests (#88) --- waku/nodes_basic_test.go | 57 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/waku/nodes_basic_test.go b/waku/nodes_basic_test.go index d21eea6..f486945 100644 --- a/waku/nodes_basic_test.go +++ b/waku/nodes_basic_test.go @@ -5,6 +5,7 @@ import ( "time" "github.com/stretchr/testify/require" + "github.com/waku-org/waku-go-bindings/waku/common" ) func TestBasicWakuNodes(t *testing.T) { @@ -68,3 +69,59 @@ func TestNodeRestart(t *testing.T) { Debug("TestNodeRestart completed successfully") } +func TestDoubleStart(t *testing.T) { + + tcpPort, udpPort, err := GetFreePortIfNeeded(0, 0) + require.NoError(t, err) + + config := common.WakuConfig{ + Relay: true, + Store: true, + LogLevel: "DEBUG", + Discv5Discovery: true, + ClusterID: 16, + Shards: []uint16{64}, + Discv5UdpPort: udpPort, + TcpPort: tcpPort, + } + + node, err := NewWakuNode(&config, "node") + require.NoError(t, err) + defer node.StopAndDestroy() + + // start node + require.NoError(t, node.Start()) + // now attempt to start again + require.NoError(t, node.Start()) + +} + +func TestDoubleStop(t *testing.T) { + + tcpPort, udpPort, err := GetFreePortIfNeeded(0, 0) + require.NoError(t, err) + + config := common.WakuConfig{ + Relay: true, + Store: true, + LogLevel: "DEBUG", + Discv5Discovery: true, + ClusterID: 16, + Shards: []uint16{64}, + Discv5UdpPort: udpPort, + TcpPort: tcpPort, + } + + node, err := NewWakuNode(&config, "node") + require.NoError(t, err) + defer node.StopAndDestroy() + + // start node + require.NoError(t, node.Start()) + + // stop node + require.NoError(t, node.Stop()) + // now attempt to stop it again + require.NoError(t, node.Stop()) + +}