@@ -6,12 +6,14 @@ package server
6
6
7
7
import (
8
8
"context"
9
+ "net/http"
9
10
"net/url"
10
11
"testing"
11
12
13
+ "github.com/bufbuild/connect-go"
12
14
"github.com/gitpod-io/gitpod/common-go/baseserver"
13
15
v1 "github.com/gitpod-io/gitpod/public-api/v1"
14
- "github.com/prometheus/client_golang/prometheus "
16
+ "github.com/gitpod-io/gitpod/public-api/v1/v1connect "
15
17
"github.com/stretchr/testify/require"
16
18
"google.golang.org/grpc"
17
19
"google.golang.org/grpc/codes"
@@ -25,12 +27,11 @@ func TestPublicAPIServer_v1_WorkspaceService(t *testing.T) {
25
27
srv := baseserver .NewForTests (t ,
26
28
baseserver .WithGRPC (baseserver .MustUseRandomLocalAddress (t )),
27
29
)
28
- registry := prometheus .NewRegistry ()
29
30
30
31
gitpodAPI , err := url .Parse ("wss://main.preview.gitpod-dev.com/api/v1" )
31
32
require .NoError (t , err )
32
33
33
- require .NoError (t , register (srv , gitpodAPI , registry ))
34
+ require .NoError (t , register (srv , gitpodAPI ))
34
35
baseserver .StartServerForTests (t , srv )
35
36
36
37
conn , err := grpc .Dial (srv .GRPCAddress (), grpc .WithTransportCredentials (insecure .NewCredentials ()))
@@ -69,12 +70,11 @@ func TestPublicAPIServer_v1_WorkspaceService(t *testing.T) {
69
70
func TestPublicAPIServer_v1_PrebuildService (t * testing.T ) {
70
71
ctx := context .Background ()
71
72
srv := baseserver .NewForTests (t , baseserver .WithGRPC (baseserver .MustUseRandomLocalAddress (t )))
72
- registry := prometheus .NewRegistry ()
73
73
74
74
gitpodAPI , err := url .Parse ("wss://main.preview.gitpod-dev.com/api/v1" )
75
75
require .NoError (t , err )
76
76
77
- require .NoError (t , register (srv , gitpodAPI , registry ))
77
+ require .NoError (t , register (srv , gitpodAPI ))
78
78
79
79
baseserver .StartServerForTests (t , srv )
80
80
@@ -100,6 +100,58 @@ func TestPublicAPIServer_v1_PrebuildService(t *testing.T) {
100
100
requireErrorStatusCode (t , codes .Unimplemented , err )
101
101
}
102
102
103
+ func TestPublicAPIServer_WorkspaceServiceHandler (t * testing.T ) {
104
+ ctx := context .Background ()
105
+ srv := baseserver .NewForTests (t ,
106
+ baseserver .WithGRPC (baseserver .MustUseRandomLocalAddress (t )),
107
+ baseserver .WithHTTP (baseserver .MustUseRandomLocalAddress (t )),
108
+ )
109
+
110
+ gitpodAPI , err := url .Parse ("wss://main.preview.gitpod-dev.com/api/v1" )
111
+ require .NoError (t , err )
112
+
113
+ require .NoError (t , register (srv , gitpodAPI ))
114
+ baseserver .StartServerForTests (t , srv )
115
+
116
+ client := v1connect .NewWorkspacesServiceClient (http .DefaultClient , srv .HTTPAddress ())
117
+
118
+ _ , err = client .ListWorkspaces (ctx , connect .NewRequest (& v1.ListWorkspacesRequest {}))
119
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (err ).String ())
120
+
121
+ _ , err = client .GetWorkspace (ctx , connect .NewRequest (& v1.GetWorkspaceRequest {}))
122
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (err ).String ())
123
+
124
+ _ , err = client .GetOwnerToken (ctx , connect .NewRequest (& v1.GetOwnerTokenRequest {}))
125
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (err ).String ())
126
+
127
+ _ , err = client .CreateAndStartWorkspace (ctx , connect .NewRequest (& v1.CreateAndStartWorkspaceRequest {}))
128
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (err ).String ())
129
+
130
+ _ , err = client .StartWorkspace (ctx , connect .NewRequest (& v1.StartWorkspaceRequest {}))
131
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (err ).String ())
132
+
133
+ _ , err = client .GetActiveWorkspaceInstance (ctx , connect .NewRequest (& v1.GetActiveWorkspaceInstanceRequest {}))
134
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (err ).String ())
135
+
136
+ _ , err = client .GetWorkspaceInstanceOwnerToken (ctx , connect .NewRequest (& v1.GetWorkspaceInstanceOwnerTokenRequest {}))
137
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (err ).String ())
138
+
139
+ stream , err := client .ListenToWorkspaceInstance (ctx , connect .NewRequest (& v1.ListenToWorkspaceInstanceRequest {}))
140
+ require .NoError (t , err )
141
+ stream .Receive ()
142
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (stream .Err ()).String ())
143
+
144
+ logsStream , err := client .ListenToImageBuildLogs (ctx , connect .NewRequest (& v1.ListenToImageBuildLogsRequest {}))
145
+ require .NoError (t , err )
146
+ logsStream .Receive ()
147
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (logsStream .Err ()).String ())
148
+
149
+ stopStream , err := client .StopWorkspace (ctx , connect .NewRequest (& v1.StopWorkspaceRequest {}))
150
+ require .NoError (t , err )
151
+ stopStream .Receive ()
152
+ require .Equal (t , connect .CodeUnimplemented .String (), connect .CodeOf (stopStream .Err ()).String ())
153
+ }
154
+
103
155
func requireErrorStatusCode (t * testing.T , expected codes.Code , err error ) {
104
156
require .Error (t , err )
105
157
st , ok := status .FromError (err )
0 commit comments