mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-07 20:30:36 -05:00
Port some integration tests to new test setup
The method I'm currently using (if other want to help) is: * Add fmt.Println(b.DumpTxtar()) after the Build step * Add that to a files var and pass that to Test(t, files) or similar * Then, if possible, try to reduce the files/content down to what's needed in test. Note that if the test is small, it's probably faster just to manually re-create the test.
This commit is contained in:
parent
7285e74090
commit
50dc327d1a
1 changed files with 30 additions and 47 deletions
|
@ -657,30 +657,24 @@ min_version = 0.55.0
|
||||||
func TestMountsProject(t *testing.T) {
|
func TestMountsProject(t *testing.T) {
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
|
|
||||||
config := `
|
files := `
|
||||||
|
-- config.toml --
|
||||||
baseURL="https://example.org"
|
baseURL="https://example.org"
|
||||||
|
|
||||||
[module]
|
[module]
|
||||||
[[module.mounts]]
|
[[module.mounts]]
|
||||||
source="mycontent"
|
source="mycontent"
|
||||||
target="content"
|
target="content"
|
||||||
|
-- layouts/_default/single.html --
|
||||||
`
|
Permalink: {{ .Permalink }}|
|
||||||
b := newTestSitesBuilder(t).
|
-- mycontent/mypage.md --
|
||||||
WithConfigFile("toml", config).
|
|
||||||
WithSourceFile(filepath.Join("mycontent", "mypage.md"), `
|
|
||||||
---
|
---
|
||||||
title: "My Page"
|
title: "My Page"
|
||||||
---
|
---
|
||||||
|
`
|
||||||
|
b := Test(t, files)
|
||||||
|
|
||||||
`)
|
b.AssertFileContent("public/mypage/index.html", "Permalink: https://example.org/mypage/|")
|
||||||
|
|
||||||
b.Build(BuildCfg{})
|
|
||||||
|
|
||||||
// helpers.PrintFs(b.H.Fs.Source, "public", os.Stdout)
|
|
||||||
|
|
||||||
b.AssertFileContent("public/mypage/index.html", "Permalink: https://example.org/mypage/")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// https://github.com/gohugoio/hugo/issues/6684
|
// https://github.com/gohugoio/hugo/issues/6684
|
||||||
|
@ -706,25 +700,20 @@ Home: {{ .Title }}|{{ .Content }}|
|
||||||
func TestSiteWithGoModButNoModules(t *testing.T) {
|
func TestSiteWithGoModButNoModules(t *testing.T) {
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
|
|
||||||
c := qt.New(t)
|
tempDir := t.TempDir()
|
||||||
// We need to use the OS fs for this.
|
|
||||||
workDir, clean, err := htesting.CreateTempDir(hugofs.Os, "hugo-no-mod")
|
|
||||||
c.Assert(err, qt.IsNil)
|
|
||||||
|
|
||||||
cfg := config.New()
|
files := `
|
||||||
cfg.Set("workingDir", workDir)
|
-- hugo.toml --
|
||||||
cfg.Set("publishDir", "public")
|
baseURL = "https://example.org"
|
||||||
fs := hugofs.NewFromOld(hugofs.Os, cfg)
|
-- go.mod --
|
||||||
|
|
||||||
defer clean()
|
`
|
||||||
|
|
||||||
b := newTestSitesBuilder(t)
|
b := Test(t, files, TestOptWithConfig(func(cfg *IntegrationTestConfig) {
|
||||||
b.Fs = fs
|
cfg.WorkingDir = tempDir
|
||||||
|
}))
|
||||||
|
|
||||||
b.WithWorkingDir(workDir).WithViper(cfg)
|
b.Build()
|
||||||
|
|
||||||
b.WithSourceFile("go.mod", "")
|
|
||||||
b.Build(BuildCfg{})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// https://github.com/gohugoio/hugo/issues/6622
|
// https://github.com/gohugoio/hugo/issues/6622
|
||||||
|
@ -783,7 +772,9 @@ P1: {{ $p1.Title }}|{{ $p1.RelPermalink }}|Filename: {{ $p1.File.Filename }}
|
||||||
|
|
||||||
// Issue 9426
|
// Issue 9426
|
||||||
func TestMountSameSource(t *testing.T) {
|
func TestMountSameSource(t *testing.T) {
|
||||||
config := `baseURL = 'https://example.org/'
|
files := `
|
||||||
|
-- hugo.toml --
|
||||||
|
baseURL = 'https://example.org/'
|
||||||
languageCode = 'en-us'
|
languageCode = 'en-us'
|
||||||
title = 'Hugo GitHub Issue #9426'
|
title = 'Hugo GitHub Issue #9426'
|
||||||
|
|
||||||
|
@ -800,18 +791,15 @@ target = "content/resources-a"
|
||||||
[[module.mounts]]
|
[[module.mounts]]
|
||||||
source = "extra-content"
|
source = "extra-content"
|
||||||
target = "content/resources-b"
|
target = "content/resources-b"
|
||||||
|
-- layouts/_default/single.html --
|
||||||
|
Single
|
||||||
|
-- content/p1.md --
|
||||||
|
-- extra-content/_index.md --
|
||||||
|
-- extra-content/subdir/_index.md --
|
||||||
|
-- extra-content/subdir/about.md --
|
||||||
|
"
|
||||||
`
|
`
|
||||||
b := newTestSitesBuilder(t).WithConfigFile("toml", config)
|
b := Test(t, files)
|
||||||
|
|
||||||
b.WithContent("p1.md", "")
|
|
||||||
|
|
||||||
b.WithSourceFile(
|
|
||||||
"extra-content/_index.md", "",
|
|
||||||
"extra-content/subdir/_index.md", "",
|
|
||||||
"extra-content/subdir/about.md", "",
|
|
||||||
)
|
|
||||||
|
|
||||||
b.Build(BuildCfg{})
|
|
||||||
|
|
||||||
b.AssertFileContent("public/resources-a/subdir/about/index.html", "Single")
|
b.AssertFileContent("public/resources-a/subdir/about/index.html", "Single")
|
||||||
b.AssertFileContent("public/resources-b/subdir/about/index.html", "Single")
|
b.AssertFileContent("public/resources-b/subdir/about/index.html", "Single")
|
||||||
|
@ -836,12 +824,7 @@ message: Hugo Rocks
|
||||||
{{ site.Data.extra.test.message }}
|
{{ site.Data.extra.test.message }}
|
||||||
`
|
`
|
||||||
|
|
||||||
b := NewIntegrationTestBuilder(
|
b := Test(t, files)
|
||||||
IntegrationTestConfig{
|
|
||||||
T: t,
|
|
||||||
TxtarString: files,
|
|
||||||
},
|
|
||||||
).Build()
|
|
||||||
|
|
||||||
b.AssertFileContent("public/index.html", "Hugo Rocks")
|
b.AssertFileContent("public/index.html", "Hugo Rocks")
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue