@@ -23,8 +23,6 @@ import (
2323 "testing"
2424 "time"
2525
26- "github.com/coder/coder/v2/codersdk"
27- "github.com/coder/coder/v2/codersdk/agentsdk"
2826 "github.com/coder/envbuilder"
2927 "github.com/coder/envbuilder/devcontainer/features"
3028 "github.com/coder/envbuilder/internal/magicdir"
@@ -60,71 +58,6 @@ const (
6058 testImageUbuntu = "localhost:5000/envbuilder-test-ubuntu:latest"
6159)
6260
63- func TestLogs (t * testing.T ) {
64- t .Parallel ()
65-
66- token := uuid .NewString ()
67- logsDone := make (chan struct {})
68-
69- logHandler := func (w http.ResponseWriter , r * http.Request ) {
70- switch r .URL .Path {
71- case "/api/v2/buildinfo" :
72- w .Header ().Set ("Content-Type" , "application/json" )
73- _ , _ = w .Write ([]byte (`{"version": "v2.8.9"}` ))
74- return
75- case "/api/v2/workspaceagents/me/logs" :
76- w .WriteHeader (http .StatusOK )
77- tokHdr := r .Header .Get (codersdk .SessionTokenHeader )
78- assert .Equal (t , token , tokHdr )
79- var req agentsdk.PatchLogs
80- err := json .NewDecoder (r .Body ).Decode (& req )
81- if err != nil {
82- http .Error (w , err .Error (), http .StatusBadRequest )
83- return
84- }
85- for _ , log := range req .Logs {
86- t .Logf ("got log: %+v" , log )
87- if strings .Contains (log .Output , "Closing logs" ) {
88- close (logsDone )
89- return
90- }
91- }
92- return
93- default :
94- t .Errorf ("unexpected request to %s" , r .URL .Path )
95- w .WriteHeader (http .StatusNotFound )
96- return
97- }
98- }
99- logSrv := httptest .NewServer (http .HandlerFunc (logHandler ))
100- defer logSrv .Close ()
101-
102- // Ensures that a Git repository with a devcontainer.json is cloned and built.
103- srv := gittest .CreateGitServer (t , gittest.Options {
104- Files : map [string ]string {
105- "devcontainer.json" : `{
106- "build": {
107- "dockerfile": "Dockerfile"
108- },
109- }` ,
110- "Dockerfile" : fmt .Sprintf (`FROM %s` , testImageUbuntu ),
111- },
112- })
113- _ , err := runEnvbuilder (t , runOpts {env : []string {
114- envbuilderEnv ("GIT_URL" , srv .URL ),
115- "CODER_AGENT_URL=" + logSrv .URL ,
116- "CODER_AGENT_TOKEN=" + token ,
117- }})
118- require .NoError (t , err )
119- ctx , cancel := context .WithTimeout (context .Background (), time .Minute )
120- defer cancel ()
121- select {
122- case <- ctx .Done ():
123- t .Fatal ("timed out waiting for logs" )
124- case <- logsDone :
125- }
126- }
127-
12861func TestInitScriptInitCommand (t * testing.T ) {
12962 t .Parallel ()
13063
0 commit comments