Commit 794a333b authored by Danyal Prout's avatar Danyal Prout Committed by GitHub

ensure conductor services are closed (#10347)

parent b952dc06
......@@ -59,7 +59,7 @@ func (c *conductor) RPCEndpoint() string {
return fmt.Sprintf("http://%s:%d", localhost, c.rpcPort)
}
func setupSequencerFailoverTest(t *testing.T) (*System, map[string]*conductor) {
func setupSequencerFailoverTest(t *testing.T) (*System, map[string]*conductor, func()) {
InitParallel(t)
ctx := context.Background()
......@@ -129,7 +129,12 @@ func setupSequencerFailoverTest(t *testing.T) (*System, map[string]*conductor) {
require.True(t, healthy(t, ctx, c2))
require.True(t, healthy(t, ctx, c3))
return sys, conductors
return sys, conductors, func() {
sys.Close()
for _, c := range conductors {
_ = c.service.Stop(ctx)
}
}
}
func setupHAInfra(t *testing.T, ctx context.Context) (*System, map[string]*conductor, error) {
......
......@@ -14,8 +14,8 @@ import (
// [Category: Initial Setup]
// In this test, we test that we can successfully setup a working cluster.
func TestSequencerFailover_SetupCluster(t *testing.T) {
sys, conductors := setupSequencerFailoverTest(t)
defer sys.Close()
_, conductors, cleanup := setupSequencerFailoverTest(t)
defer cleanup()
require.Equal(t, 3, len(conductors), "Expected 3 conductors")
for _, con := range conductors {
......@@ -27,8 +27,8 @@ func TestSequencerFailover_SetupCluster(t *testing.T) {
// In this test, we test all rpcs exposed by conductor.
func TestSequencerFailover_ConductorRPC(t *testing.T) {
ctx := context.Background()
sys, conductors := setupSequencerFailoverTest(t)
defer sys.Close()
sys, conductors, cleanup := setupSequencerFailoverTest(t)
defer cleanup()
// SequencerHealthy, Leader, AddServerAsVoter are used in setup already.
......@@ -107,6 +107,10 @@ func TestSequencerFailover_ConductorRPC(t *testing.T) {
)
})
require.NoError(t, err)
defer func() {
err = nonvoter.service.Stop(ctx)
require.NoError(t, err)
}()
err = leader.client.AddServerAsNonvoter(ctx, VerifierName, nonvoter.ConsensusEndpoint())
require.NoError(t, err, "Expected leader to add non-voter")
......@@ -144,8 +148,8 @@ func TestSequencerFailover_ConductorRPC(t *testing.T) {
// [Category: Sequencer Failover]
// Test that the sequencer can successfully failover to a new sequencer once the active sequencer goes down.
func TestSequencerFailover_ActiveSequencerDown(t *testing.T) {
sys, conductors := setupSequencerFailoverTest(t)
defer sys.Close()
sys, conductors, cleanup := setupSequencerFailoverTest(t)
defer cleanup()
ctx := context.Background()
leaderId, leader := findLeader(t, conductors)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment