MCPcopy Index your code
hub / github.com/devspace-sh/devspace / TestUpstreamServer

Function TestUpstreamServer

helper/server/upstream_test.go:143–265  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

141}
142
143func TestUpstreamServer(t *testing.T) {
144 fromDir := t.TempDir()
145 toDir := t.TempDir()
146
147 err := createFiles(fromDir, fileStructure)
148 if err != nil {
149 t.Fatal(err)
150 }
151
152 err = createFiles(toDir, overwriteFileStructure)
153 if err != nil {
154 t.Fatal(err)
155 }
156
157 // Create Upload Tar
158 // Open tar
159 r, w, err := os.Pipe()
160 if err != nil {
161 t.Fatal(err)
162 }
163
164 // Use compression
165 gw := gzip.NewWriter(w)
166 tarWriter := tar.NewWriter(gw)
167
168 writtenFiles := make(map[string]bool)
169 err = recursiveTar(fromDir, "", writtenFiles, tarWriter, false)
170 if err != nil {
171 t.Fatal(err)
172 }
173
174 // Close writer
175 tarWriter.Close()
176 gw.Close()
177 w.Close()
178
179 log.Println("Wrote tar")
180
181 // Upload tar with client
182 clientReader, clientWriter := io.Pipe()
183 serverReader, serverWriter := io.Pipe()
184
185 go func() {
186 err := StartUpstreamServer(serverReader, clientWriter, &UpstreamOptions{
187 UploadPath: toDir,
188 ExludePaths: nil,
189 ExitOnClose: false,
190 })
191 if err != nil {
192 panic(err)
193 }
194 }()
195
196 conn, err := util.NewClientConnection(clientReader, serverWriter)
197 if err != nil {
198 t.Fatal(err)
199 }
200

Callers

nothing calls this directly

Calls 14

UploadMethod · 0.95
RemoveMethod · 0.95
NewClientConnectionFunction · 0.92
NewUpstreamClientFunction · 0.92
createFilesFunction · 0.85
StartUpstreamServerFunction · 0.85
compareFilesFunction · 0.85
recursiveTarFunction · 0.70
CloseMethod · 0.65
SendMethod · 0.65
CloseAndRecvMethod · 0.65
FatalMethod · 0.45

Tested by

no test coverage detected