MCPcopy
hub / github.com/gitpod-io/gitpod / TestWorkspaceAuthHandler

Function TestWorkspaceAuthHandler

components/ws-proxy/pkg/proxy/auth_test.go:22–252  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

20)
21
22func TestWorkspaceAuthHandler(t *testing.T) {
23 log.Log.Logger.SetLevel(logrus.PanicLevel)
24 type testResult struct {
25 HandlerCalled bool
26 StatusCode int
27 }
28
29 const (
30 domain = "test-domain.com"
31 workspaceID = "workspac-65f4-43c9-bf46-3541b89dca85"
32 instanceID = "instance-fce1-4ff6-9364-cf6dff0c4ecf"
33 ownerToken = "owner-token"
34 testPort = 8080
35 )
36 var (
37 ownerOnlyInfos = map[string]*WorkspaceInfo{
38 workspaceID: {
39 WorkspaceID: workspaceID,
40 InstanceID: instanceID,
41 Auth: &api.WorkspaceAuthentication{
42 Admission: api.AdmissionLevel_ADMIT_OWNER_ONLY,
43 OwnerToken: ownerToken,
44 },
45 Ports: []*api.PortSpec{{Port: testPort, Visibility: api.PortVisibility_PORT_VISIBILITY_PRIVATE}},
46 },
47 }
48 publicPortInfos = map[string]*WorkspaceInfo{
49 workspaceID: {
50 WorkspaceID: workspaceID,
51 InstanceID: instanceID,
52 Auth: &api.WorkspaceAuthentication{
53 Admission: api.AdmissionLevel_ADMIT_OWNER_ONLY,
54 OwnerToken: ownerToken,
55 },
56 Ports: []*api.PortSpec{{Port: testPort, Visibility: api.PortVisibility_PORT_VISIBILITY_PUBLIC}},
57 },
58 }
59 admitEveryoneInfos = map[string]*WorkspaceInfo{
60 workspaceID: {
61 WorkspaceID: workspaceID,
62 InstanceID: instanceID,
63 Auth: &api.WorkspaceAuthentication{Admission: api.AdmissionLevel_ADMIT_EVERYONE},
64 },
65 }
66 )
67 tests := []struct {
68 Name string
69 Infos map[string]*WorkspaceInfo
70 OwnerCookie string
71 WorkspaceID string
72 Port string
73 Expected testResult
74 }{
75 {
76 Name: "workspace not found",
77 WorkspaceID: workspaceID,
78 Expected: testResult{
79 HandlerCalled: false,

Callers

nothing calls this directly

Calls 4

WorkspaceAuthHandlerFunction · 0.85
setOwnerTokenCookieFunction · 0.85
RunMethod · 0.65
ServeHTTPMethod · 0.45

Tested by

no test coverage detected