Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
813914ec63 |
+34
-13
@@ -473,26 +473,47 @@ func TestFreshenReadErrorMessage(t *testing.T) {
|
||||
"read "+filepath.Join(root, "sub")+": is a directory")
|
||||
}
|
||||
|
||||
// TestFreshenSizeChangedMessage has freshen hash a file that has grown
|
||||
// since the scan recorded its size.
|
||||
// TestFreshenSizeChangedMessage has freshen hash a file that has grown or
|
||||
// shrunk since the scan recorded its size.
|
||||
func TestFreshenSizeChangedMessage(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
fs := afero.NewMemMapFs()
|
||||
writeTestFile(t, fs, "/d/log.txt", "hello")
|
||||
|
||||
hasher := &freshenHasher{
|
||||
fs: fs,
|
||||
absBase: "/d",
|
||||
builder: mfer.NewBuilder(),
|
||||
}
|
||||
t.Run("grown", func(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
err := hasher.processEntry(
|
||||
&freshenEntry{path: "log.txt", size: 3, needsHash: true})
|
||||
require.ErrorIs(t, err, errSizeMismatch)
|
||||
assert.EqualError(t, err, `size mismatch for "log.txt": `+
|
||||
`3 bytes when scanned but 5 bytes when read; `+
|
||||
`the file changed while freshen ran`)
|
||||
hasher := &freshenHasher{
|
||||
fs: fs,
|
||||
absBase: "/d",
|
||||
builder: mfer.NewBuilder(),
|
||||
}
|
||||
|
||||
err := hasher.processEntry(
|
||||
&freshenEntry{path: "log.txt", size: 3, needsHash: true})
|
||||
require.ErrorIs(t, err, errSizeMismatch)
|
||||
assert.EqualError(t, err, `size mismatch for "log.txt": `+
|
||||
`3 bytes when scanned but 5 bytes when read; `+
|
||||
`the file changed while freshen ran`)
|
||||
})
|
||||
|
||||
t.Run("shrunk", func(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
hasher := &freshenHasher{
|
||||
fs: fs,
|
||||
absBase: "/d",
|
||||
builder: mfer.NewBuilder(),
|
||||
}
|
||||
|
||||
err := hasher.processEntry(
|
||||
&freshenEntry{path: "log.txt", size: 8, needsHash: true})
|
||||
require.ErrorIs(t, err, errSizeMismatch)
|
||||
assert.EqualError(t, err, `size mismatch for "log.txt": `+
|
||||
`8 bytes when scanned but 5 bytes when read; `+
|
||||
`the file changed while freshen ran`)
|
||||
})
|
||||
}
|
||||
|
||||
func TestURLRequiredMessage(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user