aboutsummaryrefslogtreecommitdiffhomepage
path: root/source/content_directory_test.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <[email protected]>2023-01-04 18:24:36 +0100
committerBjørn Erik Pedersen <[email protected]>2023-05-16 18:01:29 +0200
commit241b21b0fd34d91fccb2ce69874110dceae6f926 (patch)
treed4e0118eac7e9c42f065815447a70805f8d6ad3e /source/content_directory_test.go
parent6aededf6b42011c3039f5f66487a89a8dd65e0e7 (diff)
downloadhugo-241b21b0fd34d91fccb2ce69874110dceae6f926.tar.gz
hugo-241b21b0fd34d91fccb2ce69874110dceae6f926.zip
Create a struct with all of Hugo's config options
Primary motivation is documentation, but it will also hopefully simplify the code. Also, * Lower case the default output format names; this is in line with the custom ones (map keys) and how it's treated all the places. This avoids doing `stringds.EqualFold` everywhere. Closes #10896 Closes #10620
Diffstat (limited to 'source/content_directory_test.go')
-rw-r--r--source/content_directory_test.go37
1 files changed, 25 insertions, 12 deletions
diff --git a/source/content_directory_test.go b/source/content_directory_test.go
index 4d800cb5a..7d1630529 100644
--- a/source/content_directory_test.go
+++ b/source/content_directory_test.go
@@ -1,4 +1,4 @@
-// Copyright 2015 The Hugo Authors. All rights reserved.
+// Copyright 2023 The Hugo Authors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -11,13 +11,18 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-package source
+package source_test
import (
+ "fmt"
"path/filepath"
"testing"
+ "github.com/gohugoio/hugo/config"
+ "github.com/gohugoio/hugo/config/testconfig"
"github.com/gohugoio/hugo/helpers"
+ "github.com/gohugoio/hugo/source"
+ "github.com/spf13/afero"
qt "github.com/frankban/quicktest"
"github.com/gohugoio/hugo/hugofs"
@@ -45,22 +50,30 @@ func TestIgnoreDotFilesAndDirectories(t *testing.T) {
{"foobar/foo.md", true, []string{"\\.md$", "\\.boo$"}},
{"foobar/foo.html", false, []string{"\\.md$", "\\.boo$"}},
{"foobar/foo.md", true, []string{"foo.md$"}},
- {"foobar/foo.md", true, []string{"*", "\\.md$", "\\.boo$"}},
+ {"foobar/foo.md", true, []string{".*", "\\.md$", "\\.boo$"}},
{"foobar/.#content.md", true, []string{"/\\.#"}},
{".#foobar.md", true, []string{"^\\.#"}},
}
for i, test := range tests {
- v := newTestConfig()
- v.Set("ignoreFiles", test.ignoreFilesRegexpes)
- fs := hugofs.NewMem(v)
- ps, err := helpers.NewPathSpec(fs, v, nil)
- c.Assert(err, qt.IsNil)
+ test := test
+ c.Run(fmt.Sprintf("[%d] %s", i, test.path), func(c *qt.C) {
+ c.Parallel()
+ v := config.New()
+ v.Set("ignoreFiles", test.ignoreFilesRegexpes)
+ v.Set("publishDir", "public")
+ afs := afero.NewMemMapFs()
+ conf := testconfig.GetTestConfig(afs, v)
+ fs := hugofs.NewFromOld(afs, v)
+ ps, err := helpers.NewPathSpec(fs, conf, nil)
+ c.Assert(err, qt.IsNil)
- s := NewSourceSpec(ps, nil, fs.Source)
+ s := source.NewSourceSpec(ps, nil, fs.Source)
+
+ if ignored := s.IgnoreFile(filepath.FromSlash(test.path)); test.ignore != ignored {
+ t.Errorf("[%d] File not ignored", i)
+ }
+ })
- if ignored := s.IgnoreFile(filepath.FromSlash(test.path)); test.ignore != ignored {
- t.Errorf("[%d] File not ignored", i)
- }
}
}