Skip to content

Commit 0026a12

Browse files
committed
Use sync.WaitGroup instead of channel
1 parent 80dddd2 commit 0026a12

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

cli/server_test.go

+9-6
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import (
1717
"os"
1818
"runtime"
1919
"strings"
20+
"sync"
2021
"testing"
2122
"time"
2223

@@ -81,9 +82,10 @@ func TestServer(t *testing.T) {
8182
root, cfg := clitest.New(t, "server", "--dev", "--skip-tunnel", "--address", ":0")
8283
var buf strings.Builder
8384
root.SetOutput(&buf)
84-
done := make(chan struct{})
85+
var wg sync.WaitGroup
86+
wg.Add(1)
8587
go func() {
86-
defer close(done)
88+
defer wg.Done()
8789

8890
err := root.ExecuteContext(ctx)
8991
require.ErrorIs(t, err, context.Canceled)
@@ -116,7 +118,7 @@ func TestServer(t *testing.T) {
116118
require.NoError(t, err)
117119

118120
cancelFunc()
119-
<-done
121+
wg.Wait()
120122
})
121123
// Duplicated test from "Development" above to test setting email/password via env.
122124
// Cannot run parallel due to os.Setenv.
@@ -133,9 +135,10 @@ func TestServer(t *testing.T) {
133135
root, cfg := clitest.New(t, "server", "--dev", "--skip-tunnel", "--address", ":0")
134136
var buf strings.Builder
135137
root.SetOutput(&buf)
136-
done := make(chan struct{})
138+
var wg sync.WaitGroup
139+
wg.Add(1)
137140
go func() {
138-
defer close(done)
141+
defer wg.Done()
139142

140143
err := root.ExecuteContext(ctx)
141144
require.ErrorIs(t, err, context.Canceled)
@@ -161,7 +164,7 @@ func TestServer(t *testing.T) {
161164
require.NoError(t, err)
162165

163166
cancelFunc()
164-
<-done
167+
wg.Wait()
165168
})
166169
t.Run("TLSBadVersion", func(t *testing.T) {
167170
t.Parallel()

0 commit comments

Comments
 (0)