rewrite generate_parent_navs

* works on a path now, not a file location
* as such is sliiiiiightly easier to understand
* now also puts the current page in the nav
* fixed failing test where this caused an error (rather than 404) on
  non-existent paths
This commit is contained in:
2020-05-28 12:09:59 -05:00
parent 0993147dea
commit 059108c37b
2 changed files with 25 additions and 16 deletions

View File

@@ -48,20 +48,27 @@ def test_page_has_modified_timestamp(client):
def test_generate_page_navs_index(app):
with app.app_context():
assert generate_parent_navs('pages/index.md') == [('incorporeal.org', '/')]
assert generate_parent_navs('/') == [('incorporeal.org', '/')]
def test_generate_page_navs_alternate_index(app):
with app.app_context():
assert generate_parent_navs('index') == [('incorporeal.org', '/')]
def test_generate_page_navs_subdir_index(app):
with app.app_context():
assert generate_parent_navs('pages/subdir/index.md') == [('incorporeal.org', '/')]
assert generate_parent_navs('/subdir/') == [('incorporeal.org', '/'), ('index.md', '/subdir/')]
def test_generate_page_navs_subdir_real_page(app):
with app.app_context():
assert generate_parent_navs('pages/subdir/page.md') == [('incorporeal.org', '/'), ('subdir', '/subdir/')]
assert generate_parent_navs('/subdir/page') == [('incorporeal.org', '/'), ('index.md', '/subdir/'),
('Page', '/subdir/page')]
def test_generate_page_navs_subdir_with_title_parsing_real_page(app):
with app.app_context():
assert generate_parent_navs('pages/subdir-with-title/page.md') == [('incorporeal.org', '/'),
('SUB!', '/subdir-with-title/')]
assert generate_parent_navs('/subdir-with-title/page') == [('incorporeal.org', '/'),
('SUB!', '/subdir-with-title/'),
('page.md', '/subdir-with-title/page')]