Add a migration test helper - hugo - [fork] hugo port for 9front
(HTM) git clone git@git.drkhsh.at/hugo.git
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Submodules
(DIR) README
(DIR) LICENSE
---
(DIR) commit f60714b5a139553c0bcbcd6319c4603d7e35a099
(DIR) parent 215a715ddd698731fd81aed9cfaf7e37826e2467
(HTM) Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date: Wed, 9 Feb 2022 16:37:21 +0100
Add a migration test helper
Diffstat:
M hugolib/testhelpers_test.go | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+), 0 deletions(-)
---
(DIR) diff --git a/hugolib/testhelpers_test.go b/hugolib/testhelpers_test.go
@@ -5,6 +5,7 @@ import (
"fmt"
"image/jpeg"
"io"
+ "io/fs"
"math/rand"
"os"
"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) {
s.AssertFileContent("public/index.html", matches...)
}