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

Function TestDownstreamServer

helper/server/downstream_test.go:18–181  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

16)
17
18func TestDownstreamServer(t *testing.T) {
19 fromDir := t.TempDir()
20 toDir := t.TempDir()
21
22 err := createFiles(fromDir, fileStructure)
23 if err != nil {
24 t.Fatal(err)
25 }
26
27 err = createFiles(toDir, overwriteFileStructure)
28 if err != nil {
29 t.Fatal(err)
30 }
31
32 // Upload tar with client
33 clientReader, clientWriter := io.Pipe()
34 serverReader, serverWriter := io.Pipe()
35
36 go func() {
37 err := StartDownstreamServer(serverReader, clientWriter, &DownstreamOptions{
38 RemotePath: fromDir,
39 ExcludePaths: []string{"emptydir"},
40 ExitOnClose: false,
41 Polling: true,
42 })
43 if err != nil {
44 panic(err)
45 }
46 }()
47
48 conn, err := util.NewClientConnection(clientReader, serverWriter)
49 if err != nil {
50 t.Fatal(err)
51 }
52
53 // Count changes
54 client := remote.NewDownstreamClient(conn)
55 amount, err := client.ChangesCount(context.Background(), &remote.Empty{})
56 if err != nil {
57 t.Fatal(err)
58 }
59 if amount.Amount == 0 {
60 t.Fatalf("Unexpected change amount, expected >0, got %d", amount.Amount)
61 }
62
63 changesClient, err := client.Changes(context.Background(), &remote.Empty{})
64 if err != nil {
65 t.Fatal(err)
66 }
67
68 log.Println("Created downstream server & client")
69
70 changes, err := getAllChanges(changesClient)
71 if err != nil {
72 t.Fatal(err)
73 }
74
75 log.Println("Got all changes")

Callers

nothing calls this directly

Calls 15

ChangesCountMethod · 0.95
ChangesMethod · 0.95
DownloadMethod · 0.95
NewClientConnectionFunction · 0.92
NewDownstreamClientFunction · 0.92
createFilesFunction · 0.85
StartDownstreamServerFunction · 0.85
getAllChangesFunction · 0.85
compareFilesFunction · 0.85
untarAllFunction · 0.70
SendMethod · 0.65
CloseMethod · 0.65

Tested by

no test coverage detected