mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-10 19:54:08 +02:00
cache/filecache: Add a filecache root dir
This is just a safe guard to make sure we don't evict/remove files that do not belong to the cache.
This commit is contained in:
15
cache/filecache/filecache_test.go
vendored
15
cache/filecache/filecache_test.go
vendored
@@ -41,6 +41,8 @@ func TestFileCache(t *testing.T) {
|
||||
for _, cacheDir := range []string{"mycache", ""} {
|
||||
|
||||
configStr := `
|
||||
workingDir = "/my/work"
|
||||
resourceDir = "resources"
|
||||
cacheDir = "CACHEDIR"
|
||||
[caches]
|
||||
[caches.getJSON]
|
||||
@@ -69,12 +71,20 @@ dir = ":cacheDir/c"
|
||||
filename, err := bfs.RealPath("key")
|
||||
assert.NoError(err)
|
||||
if cacheDir != "" {
|
||||
assert.Equal(filepath.FromSlash(cacheDir+"/c/getjson/key"), filename)
|
||||
assert.Equal(filepath.FromSlash(cacheDir+"/c/"+filecacheRootDirname+"/getjson/key"), filename)
|
||||
} else {
|
||||
// Temp dir.
|
||||
assert.Regexp(regexp.MustCompile("hugo_cache.*key"), filename)
|
||||
assert.Regexp(regexp.MustCompile(".*hugo_cache.*"+filecacheRootDirname+".*key"), filename)
|
||||
}
|
||||
|
||||
c = caches.Get("images")
|
||||
assert.NotNil(c)
|
||||
assert.Equal(time.Duration(-1), c.maxAge)
|
||||
bfs, ok = c.Fs.(*afero.BasePathFs)
|
||||
assert.True(ok)
|
||||
filename, _ = bfs.RealPath("key")
|
||||
assert.Equal(filepath.FromSlash("/my/work/resources/_gen/images/key"), filename)
|
||||
|
||||
rf := func(s string) func() (io.ReadCloser, error) {
|
||||
return func() (io.ReadCloser, error) {
|
||||
return struct {
|
||||
@@ -149,6 +159,7 @@ func TestFileCacheConcurrent(t *testing.T) {
|
||||
assert := require.New(t)
|
||||
|
||||
configStr := `
|
||||
resourceDir = "myresources"
|
||||
[caches]
|
||||
[caches.getjson]
|
||||
maxAge = "1s"
|
||||
|
Reference in New Issue
Block a user