diff options
author | Vas Sudanagunta <[email protected]> | 2018-05-29 21:35:27 -0400 |
---|---|---|
committer | Bjørn Erik Pedersen <[email protected]> | 2018-07-18 00:07:20 +0200 |
commit | b93417aa1d3d38a9e56bad25937e0e638a113faf (patch) | |
tree | 86d0ab6972b845b81204516c2716c597e851c03c /hugolib/site_test.go | |
parent | fd1f4a7860c4b989865b47c727239cf924a52fa4 (diff) | |
download | hugo-b93417aa1d3d38a9e56bad25937e0e638a113faf.tar.gz hugo-b93417aa1d3d38a9e56bad25937e0e638a113faf.zip |
Unify page lookups
This commit unifies the core internal page index for all page kinds.
This enables the `ref` and `relref` shortcodes to support all pages kinds, and adds a new page-relative `.GetPage` method with simplified signature.
See #4147
See #4727
See #4728
See #4728
See #4726
See #4652
Diffstat (limited to 'hugolib/site_test.go')
-rw-r--r-- | hugolib/site_test.go | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/hugolib/site_test.go b/hugolib/site_test.go index 202c01986..d9460e91a 100644 --- a/hugolib/site_test.go +++ b/hugolib/site_test.go @@ -628,7 +628,8 @@ func TestOrderedPages(t *testing.T) { s := buildSingleSite(t, deps.DepsCfg{Fs: fs, Cfg: cfg}, BuildCfg{SkipRender: true}) - if s.getPage(KindSection, "sect").Pages[1].title != "Three" || s.getPage(KindSection, "sect").Pages[2].title != "Four" { + sect, _ := s.getPage(nil, "sect") + if sect.Pages[1].title != "Three" || sect.Pages[2].title != "Four" { t.Error("Pages in unexpected order.") } @@ -874,8 +875,10 @@ func TestWeightedTaxonomies(t *testing.T) { func setupLinkingMockSite(t *testing.T) *Site { sources := [][2]string{ {filepath.FromSlash("level2/unique.md"), ""}, + {filepath.FromSlash("_index.md"), ""}, {filepath.FromSlash("rootfile.md"), ""}, {filepath.FromSlash("root-image.png"), ""}, + {filepath.FromSlash("common.md"), ""}, {filepath.FromSlash("level2/2-root.md"), ""}, {filepath.FromSlash("level2/common.md"), ""}, @@ -883,7 +886,7 @@ func setupLinkingMockSite(t *testing.T) *Site { {filepath.FromSlash("level2/2-image.png"), ""}, {filepath.FromSlash("level2/common.png"), ""}, - {filepath.FromSlash("level2/level3/start.md"), ""}, + {filepath.FromSlash("level2/level3/current.md"), ""}, {filepath.FromSlash("level2/level3/3-root.md"), ""}, {filepath.FromSlash("level2/level3/common.md"), ""}, {filepath.FromSlash("level2/level3/3-image.png"), ""}, @@ -910,7 +913,7 @@ func TestRefLinking(t *testing.T) { t.Parallel() site := setupLinkingMockSite(t) - currentPage := site.getPage(KindPage, "level2/level3/start.md") + currentPage, _ := site.getPage(nil, "level2/level3/current.md") if currentPage == nil { t.Fatalf("failed to find current page in site") } @@ -921,12 +924,16 @@ func TestRefLinking(t *testing.T) { relative bool expected string }{ - {"unique.md", "", true, "/level2/unique/"}, - {"level2/common.md", "", true, "/level2/common/"}, + {"/level2/unique.md", "", true, "/level2/unique/"}, + {"../unique.md", "", true, "/level2/unique/"}, + {"/level2/common.md", "", true, "/level2/common/"}, + {"../common.md", "", true, "/level2/common/"}, + {"common.md", "", true, "/level2/level3/common/"}, + {"/common.md", "", true, "/common/"}, {"3-root.md", "", true, "/level2/level3/3-root/"}, } { if out, err := site.Info.refLink(test.link, currentPage, test.relative, test.outputFormat); err != nil || out != test.expected { - t.Errorf("[%d] Expected %s to resolve to (%s), got (%s) - error: %s", i, test.link, test.expected, out, err) + t.Errorf("[%d] Expected %q from %q to resolve to %q, got %q - error: %s", i, test.link, currentPage.absoluteSourceRef(), test.expected, out, err) } } |