mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
Add a migration test helper
This commit is contained in:
parent
215a715ddd
commit
f60714b5a1
1 changed files with 29 additions and 0 deletions
|
@ -5,6 +5,7 @@ import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"image/jpeg"
|
"image/jpeg"
|
||||||
"io"
|
"io"
|
||||||
|
"io/fs"
|
||||||
"math/rand"
|
"math/rand"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
@ -702,6 +703,34 @@ func (s *sitesBuilder) AssertFileContentFn(filename string, f func(s string) boo
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Helper to migrate tests to new format.
|
||||||
|
func (s *sitesBuilder) DumpTxtar() string {
|
||||||
|
var sb strings.Builder
|
||||||
|
|
||||||
|
skipRe := regexp.MustCompile(`^(public|resources|package-lock.json|go.sum)`)
|
||||||
|
|
||||||
|
afero.Walk(s.Fs.Source, s.workingDir, func(path string, info fs.FileInfo, err error) error {
|
||||||
|
rel := strings.TrimPrefix(path, s.workingDir+"/")
|
||||||
|
if skipRe.MatchString(rel) {
|
||||||
|
if info.IsDir() {
|
||||||
|
return filepath.SkipDir
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
if info == nil || info.IsDir() {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
sb.WriteString(fmt.Sprintf("-- %s --\n", rel))
|
||||||
|
b, err := afero.ReadFile(s.Fs.Source, path)
|
||||||
|
s.Assert(err, qt.IsNil)
|
||||||
|
sb.WriteString(strings.TrimSpace(string(b)))
|
||||||
|
sb.WriteString("\n")
|
||||||
|
return nil
|
||||||
|
})
|
||||||
|
|
||||||
|
return sb.String()
|
||||||
|
}
|
||||||
|
|
||||||
func (s *sitesBuilder) AssertHome(matches ...string) {
|
func (s *sitesBuilder) AssertHome(matches ...string) {
|
||||||
s.AssertFileContent("public/index.html", matches...)
|
s.AssertFileContent("public/index.html", matches...)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue