test: Wait for WorkspaceResources to complete before exiting (#1149)

This caused a flake seen in:
https://github.com/coder/coder/runs/6162655678?check_suite_focus=true#step:9:87
This commit is contained in:
Kyle Carberry
2022-04-25 13:11:35 -05:00
committed by GitHub
parent 1e6f2cf750
commit 09405ddc40

View File

@ -17,6 +17,7 @@ func TestWorkspaceResources(t *testing.T) {
t.Run("SingleAgentSSH", func(t *testing.T) {
t.Parallel()
ptty := ptytest.New(t)
done := make(chan struct{})
go func() {
err := cliui.WorkspaceResources(ptty.Output(), []codersdk.WorkspaceResource{{
Type: "google_compute_instance",
@ -32,14 +33,17 @@ func TestWorkspaceResources(t *testing.T) {
WorkspaceName: "example",
})
require.NoError(t, err)
close(done)
}()
ptty.ExpectMatch("coder ssh example")
<-done
})
t.Run("MultipleStates", func(t *testing.T) {
t.Parallel()
ptty := ptytest.New(t)
disconnected := database.Now().Add(-4 * time.Second)
done := make(chan struct{})
go func() {
err := cliui.WorkspaceResources(ptty.Output(), []codersdk.WorkspaceResource{{
Transition: database.WorkspaceTransitionStart,
@ -82,9 +86,11 @@ func TestWorkspaceResources(t *testing.T) {
HideAccess: false,
})
require.NoError(t, err)
close(done)
}()
ptty.ExpectMatch("google_compute_disk.root")
ptty.ExpectMatch("google_compute_instance.dev")
ptty.ExpectMatch("coder ssh dev.postgres")
<-done
})
}