MCPcopy
hub / github.com/kopia/kopia / TestCompareIdenticalDirectories

Function TestCompareIdenticalDirectories

internal/diff/diff_test.go:132–181  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

130}
131
132func TestCompareIdenticalDirectories(t *testing.T) {
133 var buf bytes.Buffer
134
135 ctx := context.Background()
136
137 dirModTime := time.Date(2023, time.April, 12, 10, 30, 0, 0, time.UTC)
138 dirOwnerInfo := fs.OwnerInfo{UserID: 1000, GroupID: 1000}
139 dirMode := os.FileMode(0o777)
140 fileModTime := time.Date(2023, time.April, 12, 10, 30, 0, 0, time.UTC)
141
142 oid1 := oidForString(t, "k", "sdkjfn")
143 oid2 := oidForString(t, "k", "dfjlgn")
144
145 file1 := &testFile{testBaseEntry: testBaseEntry{modtime: fileModTime, name: "file1.txt"}, content: "abcdefghij"}
146 file2 := &testFile{testBaseEntry: testBaseEntry{modtime: fileModTime, name: "file2.txt"}, content: "klmnopqrstuvwxyz"}
147
148 dir1 := createTestDirectory(
149 "testDir1",
150 dirModTime,
151 dirOwnerInfo,
152 dirMode,
153 oid1,
154 file1,
155 file2,
156 )
157 dir2 := createTestDirectory(
158 "testDir2",
159 dirModTime,
160 dirOwnerInfo,
161 dirMode,
162 oid2,
163 file1,
164 file2,
165 )
166
167 expectedStats := diff.Stats{}
168
169 c, err := diff.NewComparer(&buf, statsOnly)
170 require.NoError(t, err)
171
172 t.Cleanup(func() {
173 _ = c.Close()
174 })
175
176 actualStats, err := c.Compare(ctx, dir1, dir2)
177
178 require.NoError(t, err)
179 require.Empty(t, buf.String())
180 require.Equal(t, expectedStats, actualStats)
181}
182
183func TestCompareDifferentDirectories(t *testing.T) {
184 var buf bytes.Buffer

Callers

nothing calls this directly

Calls 8

CloseMethod · 0.95
CompareMethod · 0.95
NewComparerFunction · 0.92
oidForStringFunction · 0.85
createTestDirectoryFunction · 0.85
EqualMethod · 0.80
CleanupMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected