comparison 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
comparison
equal deleted inserted replaced
1019:bd544b65cfad 1020:298b07a899b5
44 structure = fs.getStructure('kitchen/_counter') 44 structure = fs.getStructure('kitchen/_counter')
45 assert structure['index.html'] == 'Second\nFirst\n' 45 assert structure['index.html'] == 'Second\nFirst\n'
46 assert structure['2017']['01']['01']['first.html'] == 'something 1' 46 assert structure['2017']['01']['01']['first.html'] == 'something 1'
47 assert structure['2017']['01']['02']['second.html'] == 'something 2' 47 assert structure['2017']['01']['02']['second.html'] == 'something 2'
48 48
49 print("\n\n\n")
49 fs.runChef('bake') 50 fs.runChef('bake')
50 structure = fs.getStructure('kitchen/_counter') 51 structure = fs.getStructure('kitchen/_counter')
51 assert structure['index.html'] == 'Second\nFirst\n' 52 assert structure['index.html'] == 'Second\nFirst\n'
52 assert structure['2017']['01']['01']['first.html'] == 'something 1' 53 assert structure['2017']['01']['01']['first.html'] == 'something 1'
53 assert structure['2017']['01']['02']['second.html'] == 'something 2' 54 assert structure['2017']['01']['02']['second.html'] == 'something 2'
54 55
56 print("\n\n\n")
55 fs.runChef('bake') 57 fs.runChef('bake')
56 structure = fs.getStructure('kitchen/_counter') 58 structure = fs.getStructure('kitchen/_counter')
57 assert structure['index.html'] == 'Second\nFirst\n' 59 assert structure['index.html'] == 'Second\nFirst\n'
58 assert structure['2017']['01']['01']['first.html'] == 'something 1' 60 assert structure['2017']['01']['01']['first.html'] == 'something 1'
59 assert structure['2017']['01']['02']['second.html'] == 'something 2' 61 assert structure['2017']['01']['02']['second.html'] == 'something 2'
60 62
63 print("\n\n\n")
61 fs.runChef('bake') 64 fs.runChef('bake')
62 structure = fs.getStructure('kitchen/_counter') 65 structure = fs.getStructure('kitchen/_counter')
63 assert structure['index.html'] == 'Second\nFirst\n' 66 assert structure['index.html'] == 'Second\nFirst\n'
64 assert structure['2017']['01']['01']['first.html'] == 'something 1' 67 assert structure['2017']['01']['01']['first.html'] == 'something 1'
65 assert structure['2017']['01']['02']['second.html'] == 'something 2' 68 assert structure['2017']['01']['02']['second.html'] == 'something 2'
66 69
70
71 def test_bake_four_times_again():
72 fs = (mock_fs()
73 .withConfig({'site': {
74 'default_format': 'none',
75 'default_page_layout': 'none',
76 'default_post_layout': 'none',
77 }})
78 .withPage('pages/_index.html', {'layout': 'none', 'format': 'none'},
79 "{% for p in pagination.posts -%}\n"
80 "{{p.title}} : {{p.content}}\n"
81 "{% endfor %}")
82 .withPage('posts/2017-01-01_first.html', {'title': "First"},
83 "something 1")
84 .withPage('posts/2017-01-02_second.html', {'title': "Second"},
85 "something 2"))
86 with mock_fs_scope(fs):
87 fs.runChef('bake')
88 structure = fs.getStructure('kitchen/_counter')
89 assert structure['index.html'] == 'Second : something 2\nFirst : something 1\n'
90 assert structure['2017']['01']['01']['first.html'] == 'something 1'
91 assert structure['2017']['01']['02']['second.html'] == 'something 2'
92
93 print("\n\n\n")
94 fs.runChef('bake')
95 structure = fs.getStructure('kitchen/_counter')
96 assert structure['index.html'] == 'Second : something 2\nFirst : something 1\n'
97 assert structure['2017']['01']['01']['first.html'] == 'something 1'
98 assert structure['2017']['01']['02']['second.html'] == 'something 2'
99
100 print("\n\n\n")
101 fs.runChef('bake')
102 structure = fs.getStructure('kitchen/_counter')
103 assert structure['index.html'] == 'Second : something 2\nFirst : something 1\n'
104 assert structure['2017']['01']['01']['first.html'] == 'something 1'
105 assert structure['2017']['01']['02']['second.html'] == 'something 2'
106
107 print("\n\n\n")
108 fs.runChef('bake')
109 structure = fs.getStructure('kitchen/_counter')
110 assert structure['index.html'] == 'Second : something 2\nFirst : something 1\n'
111 assert structure['2017']['01']['01']['first.html'] == 'something 1'
112 assert structure['2017']['01']['02']['second.html'] == 'something 2'
113