Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gohugoio/hugo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2021-10-25 13:28:12 +0300
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2021-10-25 20:50:18 +0300
commit75c9b893d98961a504cff9ed3c89055d16e315d6 (patch)
tree0cc8508ff66ebaccb00cd2fc60313591e0be0a43 /create/content_test.go
parent64e1613fb390bd893900dc0596e5c3f3c8e1cd8c (diff)
create: Validate the target path in hugo new
Fixes #9072
Diffstat (limited to 'create/content_test.go')
-rw-r--r--create/content_test.go17
1 files changed, 14 insertions, 3 deletions
diff --git a/create/content_test.go b/create/content_test.go
index d40634083..802e494c4 100644
--- a/create/content_test.go
+++ b/create/content_test.go
@@ -40,10 +40,11 @@ func TestNewContent(t *testing.T) {
name string
kind string
path string
- expected []string
+ expected interface{}
}{
{"Post", "post", "post/sample-1.md", []string{`title = "Post Arch title"`, `test = "test1"`, "date = \"2015-01-12T19:20:04-07:00\""}},
{"Post org-mode", "post", "post/org-1.org", []string{`#+title: ORG-1`}},
+ {"Post, unknown content filetype", "post", "post/sample-1.pdoc", false},
{"Empty date", "emptydate", "post/sample-ed.md", []string{`title = "Empty Date Arch title"`, `test = "test1"`}},
{"Archetype file not found", "stump", "stump/sample-2.md", []string{`title: "Sample 2"`}}, // no archetype file
{"No archetype", "", "sample-3.md", []string{`title: "Sample 3"`}}, // no archetype
@@ -80,14 +81,24 @@ func TestNewContent(t *testing.T) {
h, err := hugolib.NewHugoSites(deps.DepsCfg{Cfg: cfg, Fs: fs})
c.Assert(err, qt.IsNil)
- c.Assert(create.NewContent(h, cas.kind, cas.path), qt.IsNil)
+ err = create.NewContent(h, cas.kind, cas.path)
+
+ if b, ok := cas.expected.(bool); ok && !b {
+ if !b {
+ c.Assert(err, qt.Not(qt.IsNil))
+ }
+ return
+ }
+
+ c.Assert(err, qt.IsNil)
fname := filepath.FromSlash(cas.path)
if !strings.HasPrefix(fname, "content") {
fname = filepath.Join("content", fname)
}
content := readFileFromFs(c, fs.Source, fname)
- for _, v := range cas.expected {
+
+ for _, v := range cas.expected.([]string) {
found := strings.Contains(content, v)
if !found {
c.Fatalf("[%d] %q missing from output:\n%q", i, v, content)