mv template load in page create and added tests

This commit is contained in:
Daniele Grandini
2016-08-27 15:51:18 +02:00
parent d702026134
commit fdbde7840d
2 changed files with 29 additions and 1 deletions
+7 -1
View File
@@ -105,7 +105,6 @@ module Precious
@css = settings.wiki_options[:css]
@js = settings.wiki_options[:js]
@mathjax_config = settings.wiki_options[:mathjax_config]
@template_page=wiki_page("/_Template").page.raw_data if settings.wiki_options[:template_page]
end
get '/' do
@@ -156,6 +155,7 @@ module Precious
get '/edit/*' do
forbid unless @allow_editing
wikip = wiki_page(params[:splat].first)
@name = wikip.name
@path = wikip.path
@@ -320,6 +320,12 @@ module Precious
get '/create/*' do
forbid unless @allow_editing
if settings.wiki_options[:template_page] then
temppage = wiki_page("/_Template")
@template_page = (temppage.page != nil) ? temppage.page.raw_data : "Template page option is set, but no /_Template page is present or committed."
end
wikip = wiki_page(params[:splat].first.gsub('+', '-'))
@name = wikip.name.to_url
@path = wikip.path
+22
View File
@@ -310,6 +310,28 @@ context "Frontend" do
assert_no_match(/[^\/]#{dir}/, last_response.body)
end
test "create with template succeed if template exists" do
Precious::App.set(:wiki_options, { :template_page => true })
page='_Template'
post '/create', :content => 'fake template', :page => page,
:path => '/', :format => 'markdown', :message => ''
follow_redirect!
assert last_response.ok?
#puts last_response
@wiki.clear_cache
get "/create/TT"
assert last_response.ok?
get '/delete/_Template'
Precious::App.set(:wiki_options, { :template_page => false })
end
test "create with template succeed if template doesn't exist" do
Precious::App.set(:wiki_options, { :template_page => true })
get "/create/TT"
assert last_response.ok?
Precious::App.set(:wiki_options, { :template_page => false })
end
test "create sets the correct path for a relative path subdirectory with the page file directory set" do
Precious::App.set(:wiki_options, { :page_file_dir => "foo" })
dir = "bardir"