mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-07 20:30:36 -05:00
parent
c7d5f9f067
commit
311b8008bf
3 changed files with 51 additions and 4 deletions
|
@ -756,3 +756,29 @@ theme_param="themevalue2"
|
||||||
})
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestInvalidDefaultMarkdownHandler(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
|
|
||||||
|
files := `
|
||||||
|
-- config.toml --
|
||||||
|
[markup]
|
||||||
|
defaultMarkdownHandler = 'blackfriday'
|
||||||
|
-- content/_index.md --
|
||||||
|
## Foo
|
||||||
|
-- layouts/index.html --
|
||||||
|
{{ .Content }}
|
||||||
|
|
||||||
|
`
|
||||||
|
|
||||||
|
b, err := NewIntegrationTestBuilder(
|
||||||
|
IntegrationTestConfig{
|
||||||
|
T: t,
|
||||||
|
TxtarString: files,
|
||||||
|
},
|
||||||
|
).BuildE()
|
||||||
|
|
||||||
|
b.Assert(err, qt.IsNotNil)
|
||||||
|
b.Assert(err.Error(), qt.Contains, "Configured defaultMarkdownHandler \"blackfriday\" not found. Did you mean to use goldmark? Blackfriday was removed in Hugo v0.100.0.")
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -197,7 +197,10 @@ func (s *IntegrationTestBuilder) Build() *IntegrationTestBuilder {
|
||||||
|
|
||||||
func (s *IntegrationTestBuilder) BuildE() (*IntegrationTestBuilder, error) {
|
func (s *IntegrationTestBuilder) BuildE() (*IntegrationTestBuilder, error) {
|
||||||
s.Helper()
|
s.Helper()
|
||||||
s.initBuilder()
|
if err := s.initBuilder(); err != nil {
|
||||||
|
return s, err
|
||||||
|
}
|
||||||
|
|
||||||
err := s.build(BuildCfg{})
|
err := s.build(BuildCfg{})
|
||||||
return s, err
|
return s, err
|
||||||
}
|
}
|
||||||
|
@ -267,7 +270,8 @@ func (s *IntegrationTestBuilder) FileContent(filename string) string {
|
||||||
return s.readWorkingDir(s, s.fs, filepath.FromSlash(filename))
|
return s.readWorkingDir(s, s.fs, filepath.FromSlash(filename))
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *IntegrationTestBuilder) initBuilder() {
|
func (s *IntegrationTestBuilder) initBuilder() error {
|
||||||
|
var initErr error
|
||||||
s.builderInit.Do(func() {
|
s.builderInit.Do(func() {
|
||||||
var afs afero.Fs
|
var afs afero.Fs
|
||||||
if s.Cfg.NeedsOsFS {
|
if s.Cfg.NeedsOsFS {
|
||||||
|
@ -320,7 +324,10 @@ func (s *IntegrationTestBuilder) initBuilder() {
|
||||||
|
|
||||||
depsCfg := deps.DepsCfg{Cfg: cfg, Fs: fs, Running: s.Cfg.Running, Logger: logger}
|
depsCfg := deps.DepsCfg{Cfg: cfg, Fs: fs, Running: s.Cfg.Running, Logger: logger}
|
||||||
sites, err := NewHugoSites(depsCfg)
|
sites, err := NewHugoSites(depsCfg)
|
||||||
s.Assert(err, qt.IsNil)
|
if err != nil {
|
||||||
|
initErr = err
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
s.H = sites
|
s.H = sites
|
||||||
s.fs = fs
|
s.fs = fs
|
||||||
|
@ -338,6 +345,8 @@ func (s *IntegrationTestBuilder) initBuilder() {
|
||||||
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
return initErr
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *IntegrationTestBuilder) absFilename(filename string) string {
|
func (s *IntegrationTestBuilder) absFilename(filename string) string {
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
package markup
|
package markup
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/gohugoio/hugo/markup/highlight"
|
"github.com/gohugoio/hugo/markup/highlight"
|
||||||
|
@ -43,6 +44,8 @@ func NewConverterProvider(cfg converter.ProviderConfig) (ConverterProvider, erro
|
||||||
}
|
}
|
||||||
|
|
||||||
cfg.MarkupConfig = markupConfig
|
cfg.MarkupConfig = markupConfig
|
||||||
|
defaultHandler := cfg.MarkupConfig.DefaultMarkdownHandler
|
||||||
|
var defaultFound bool
|
||||||
|
|
||||||
add := func(p converter.ProviderProvider, aliases ...string) error {
|
add := func(p converter.ProviderProvider, aliases ...string) error {
|
||||||
c, err := p.New(cfg)
|
c, err := p.New(cfg)
|
||||||
|
@ -54,8 +57,9 @@ func NewConverterProvider(cfg converter.ProviderConfig) (ConverterProvider, erro
|
||||||
|
|
||||||
aliases = append(aliases, name)
|
aliases = append(aliases, name)
|
||||||
|
|
||||||
if strings.EqualFold(name, cfg.MarkupConfig.DefaultMarkdownHandler) {
|
if strings.EqualFold(name, defaultHandler) {
|
||||||
aliases = append(aliases, "markdown")
|
aliases = append(aliases, "markdown")
|
||||||
|
defaultFound = true
|
||||||
}
|
}
|
||||||
|
|
||||||
addConverter(converters, c, aliases...)
|
addConverter(converters, c, aliases...)
|
||||||
|
@ -78,6 +82,14 @@ func NewConverterProvider(cfg converter.ProviderConfig) (ConverterProvider, erro
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if !defaultFound {
|
||||||
|
msg := "markup: Configured defaultMarkdownHandler %q not found."
|
||||||
|
if defaultHandler == "blackfriday" {
|
||||||
|
msg += " Did you mean to use goldmark? Blackfriday was removed in Hugo v0.100.0."
|
||||||
|
}
|
||||||
|
return nil, fmt.Errorf(msg, defaultHandler)
|
||||||
|
}
|
||||||
|
|
||||||
return &converterRegistry{
|
return &converterRegistry{
|
||||||
config: cfg,
|
config: cfg,
|
||||||
converters: converters,
|
converters: converters,
|
||||||
|
|
Loading…
Reference in a new issue