MCPcopy Create free account
hub / github.com/docker/cli / TestExportImport

Function TestExportImport

cli/context/store/store_test.go:38–90  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

36)
37
38func TestExportImport(t *testing.T) {
39 s := New(t.TempDir(), testCfg)
40 err := s.CreateOrUpdate(
41 Metadata{
42 Endpoints: map[string]any{
43 "ep1": endpoint{Foo: "bar"},
44 },
45 Metadata: context{Bar: "baz"},
46 Name: "source",
47 })
48 assert.NilError(t, err)
49 file1 := make([]byte, 1500)
50 rand.Read(file1)
51 file2 := make([]byte, 3700)
52 rand.Read(file2)
53 err = s.ResetEndpointTLSMaterial("source", "ep1", &EndpointTLSData{
54 Files: map[string][]byte{
55 "file1": file1,
56 "file2": file2,
57 },
58 })
59 assert.NilError(t, err)
60 r := Export("source", s)
61 defer r.Close()
62 err = Import("dest", s, r)
63 assert.NilError(t, err)
64 srcMeta, err := s.GetMetadata("source")
65 assert.NilError(t, err)
66 destMeta, err := s.GetMetadata("dest")
67 assert.NilError(t, err)
68 assert.DeepEqual(t, destMeta.Metadata, srcMeta.Metadata)
69 assert.DeepEqual(t, destMeta.Endpoints, srcMeta.Endpoints)
70 srcFileList, err := s.ListTLSFiles("source")
71 assert.NilError(t, err)
72 destFileList, err := s.ListTLSFiles("dest")
73 assert.NilError(t, err)
74 assert.Equal(t, 1, len(destFileList))
75 assert.Equal(t, 1, len(srcFileList))
76 assert.Equal(t, 2, len(destFileList["ep1"]))
77 assert.Equal(t, 2, len(srcFileList["ep1"]))
78 srcData1, err := s.GetTLSData("source", "ep1", "file1")
79 assert.NilError(t, err)
80 assert.DeepEqual(t, file1, srcData1)
81 srcData2, err := s.GetTLSData("source", "ep1", "file2")
82 assert.NilError(t, err)
83 assert.DeepEqual(t, file2, srcData2)
84 destData1, err := s.GetTLSData("dest", "ep1", "file1")
85 assert.NilError(t, err)
86 assert.DeepEqual(t, file1, destData1)
87 destData2, err := s.GetTLSData("dest", "ep1", "file2")
88 assert.NilError(t, err)
89 assert.DeepEqual(t, file2, destData2)
90}
91
92func TestRemove(t *testing.T) {
93 s := New(t.TempDir(), testCfg)

Callers

nothing calls this directly

Calls 10

ExportFunction · 0.85
ImportFunction · 0.85
NewFunction · 0.70
CreateOrUpdateMethod · 0.65
GetMetadataMethod · 0.65
ListTLSFilesMethod · 0.65
GetTLSDataMethod · 0.65
ReadMethod · 0.45
CloseMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…