|
4 | 4 | "bytes"
|
5 | 5 | "context"
|
6 | 6 | "encoding/json"
|
| 7 | + "fmt" |
7 | 8 | "testing"
|
8 | 9 |
|
9 | 10 | "github.com/stretchr/testify/assert"
|
@@ -74,4 +75,33 @@ func TestList(t *testing.T) {
|
74 | 75 | require.NoError(t, json.Unmarshal(out.Bytes(), &workspaces))
|
75 | 76 | require.Len(t, workspaces, 1)
|
76 | 77 | })
|
| 78 | + |
| 79 | + t.Run("NoWorkspacesJSON", func(t *testing.T) { |
| 80 | + t.Parallel() |
| 81 | + client := coderdtest.New(t, nil) |
| 82 | + owner := coderdtest.CreateFirstUser(t, client) |
| 83 | + member, _ := coderdtest.CreateAnotherUser(t, client, owner.OrganizationID) |
| 84 | + |
| 85 | + inv, root := clitest.New(t, "list", "--output=json") |
| 86 | + clitest.SetupConfig(t, member, root) |
| 87 | + |
| 88 | + ctx, cancelFunc := context.WithTimeout(context.Background(), testutil.WaitLong) |
| 89 | + defer cancelFunc() |
| 90 | + |
| 91 | + stdout := bytes.NewBuffer(nil) |
| 92 | + stderr := bytes.NewBuffer(nil) |
| 93 | + inv.Stdout = stdout |
| 94 | + inv.Stderr = stderr |
| 95 | + err := inv.WithContext(ctx).Run() |
| 96 | + require.NoError(t, err) |
| 97 | + |
| 98 | + fmt.Printf("stdout.Bytes: %s\n", stdout.Bytes()) |
| 99 | + fmt.Printf("stderr.Bytes: %s\n", stderr.Bytes()) |
| 100 | + |
| 101 | + var workspaces []codersdk.Workspace |
| 102 | + require.NoError(t, json.Unmarshal(stdout.Bytes(), &workspaces)) |
| 103 | + require.Len(t, workspaces, 0) |
| 104 | + |
| 105 | + require.Len(t, stderr.Bytes(), 0) |
| 106 | + }) |
77 | 107 | }
|
0 commit comments