Mercurial > piecrust2
diff tests/test_baking_baker.py @ 1020:298b07a899b5
bake: Fix overriding issues between theme and user pages for index pages.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Tue, 05 Dec 2017 22:26:25 -0800 |
parents | 1857dbd4580f |
children |
line wrap: on
line diff
--- a/tests/test_baking_baker.py Wed Nov 29 21:36:11 2017 -0800 +++ b/tests/test_baking_baker.py Tue Dec 05 22:26:25 2017 -0800 @@ -46,21 +46,68 @@ assert structure['2017']['01']['01']['first.html'] == 'something 1' assert structure['2017']['01']['02']['second.html'] == 'something 2' + print("\n\n\n") + fs.runChef('bake') + structure = fs.getStructure('kitchen/_counter') + assert structure['index.html'] == 'Second\nFirst\n' + assert structure['2017']['01']['01']['first.html'] == 'something 1' + assert structure['2017']['01']['02']['second.html'] == 'something 2' + + print("\n\n\n") + fs.runChef('bake') + structure = fs.getStructure('kitchen/_counter') + assert structure['index.html'] == 'Second\nFirst\n' + assert structure['2017']['01']['01']['first.html'] == 'something 1' + assert structure['2017']['01']['02']['second.html'] == 'something 2' + + print("\n\n\n") fs.runChef('bake') structure = fs.getStructure('kitchen/_counter') assert structure['index.html'] == 'Second\nFirst\n' assert structure['2017']['01']['01']['first.html'] == 'something 1' assert structure['2017']['01']['02']['second.html'] == 'something 2' + +def test_bake_four_times_again(): + fs = (mock_fs() + .withConfig({'site': { + 'default_format': 'none', + 'default_page_layout': 'none', + 'default_post_layout': 'none', + }}) + .withPage('pages/_index.html', {'layout': 'none', 'format': 'none'}, + "{% for p in pagination.posts -%}\n" + "{{p.title}} : {{p.content}}\n" + "{% endfor %}") + .withPage('posts/2017-01-01_first.html', {'title': "First"}, + "something 1") + .withPage('posts/2017-01-02_second.html', {'title': "Second"}, + "something 2")) + with mock_fs_scope(fs): fs.runChef('bake') structure = fs.getStructure('kitchen/_counter') - assert structure['index.html'] == 'Second\nFirst\n' + assert structure['index.html'] == 'Second : something 2\nFirst : something 1\n' assert structure['2017']['01']['01']['first.html'] == 'something 1' assert structure['2017']['01']['02']['second.html'] == 'something 2' + print("\n\n\n") fs.runChef('bake') structure = fs.getStructure('kitchen/_counter') - assert structure['index.html'] == 'Second\nFirst\n' + assert structure['index.html'] == 'Second : something 2\nFirst : something 1\n' assert structure['2017']['01']['01']['first.html'] == 'something 1' assert structure['2017']['01']['02']['second.html'] == 'something 2' + print("\n\n\n") + fs.runChef('bake') + structure = fs.getStructure('kitchen/_counter') + assert structure['index.html'] == 'Second : something 2\nFirst : something 1\n' + assert structure['2017']['01']['01']['first.html'] == 'something 1' + assert structure['2017']['01']['02']['second.html'] == 'something 2' + + print("\n\n\n") + fs.runChef('bake') + structure = fs.getStructure('kitchen/_counter') + assert structure['index.html'] == 'Second : something 2\nFirst : something 1\n' + assert structure['2017']['01']['01']['first.html'] == 'something 1' + assert structure['2017']['01']['02']['second.html'] == 'something 2' +