@@ -128,6 +128,7 @@ def app
128128 request = {
129129 :front_matter => { } ,
130130 :raw_content => "test" ,
131+ :path => "page-new.md" ,
131132 }
132133 put "/pages/page-new.md" , request . to_json
133134
@@ -143,6 +144,7 @@ def app
143144 request = {
144145 :front_matter => { :foo => "bar" } ,
145146 :raw_content => "test" ,
147+ :path => "page-new.md" ,
146148 }
147149 put "/pages/page-new.md" , request . to_json
148150
@@ -157,6 +159,7 @@ def app
157159 request = {
158160 :front_matter => { :foo => "bar" } ,
159161 :raw_content => "test" ,
162+ :path => "page-dir/page-new.md" ,
160163 }
161164 put "/pages/page-dir/page-new.md" , request . to_json
162165
@@ -167,12 +170,27 @@ def app
167170 delete_file "page-dir/page-new.md"
168171 end
169172
173+ it "does not writes a non html page" do
174+ expected_error = "Invalid file extension for pages"
175+ request = {
176+ :front_matter => { :foo => "bar" } ,
177+ :raw_content => "test" ,
178+ :path => "page-new.txt" ,
179+ }
180+ put "/pages/page-new.txt" , request . to_json
181+
182+ expect ( last_response ) . to be_unprocessable
183+ expect ( last_response_parsed [ "error_message" ] ) . to eq ( expected_error )
184+ expect ( "page-new.md" ) . to_not be_an_existing_file
185+ end
186+
170187 it "updates a page" do
171188 write_file "page-update.md"
172189
173190 request = {
174191 :front_matter => { :foo => "bar2" } ,
175192 :raw_content => "test" ,
193+ :path => "page-update.md" ,
176194 }
177195 put "/pages/page-update.md" , request . to_json
178196 expect ( "page-update.md" ) . to be_an_existing_file
@@ -189,6 +207,7 @@ def app
189207 request = {
190208 :front_matter => { :foo => "bar2" } ,
191209 :raw_content => "test" ,
210+ :path => "page-dir/page-update.md" ,
192211 }
193212 put "/pages/page-dir/page-update.md" , request . to_json
194213 expect ( "page-dir/page-update.md" ) . to be_an_existing_file
0 commit comments