@@ -91,6 +91,9 @@ module Precious
|
|||||||
end
|
end
|
||||||
|
|
||||||
# path is set to name if path is nil.
|
# path is set to name if path is nil.
|
||||||
|
# if path is 'a/b' and a and b are dirs, then
|
||||||
|
# path must have a trailing slash 'a/b/' or
|
||||||
|
# extract_path will trim path to 'a'
|
||||||
# name, path, version
|
# name, path, version
|
||||||
def wiki_page( name, path = nil, version = nil)
|
def wiki_page( name, path = nil, version = nil)
|
||||||
path = name if path.nil?
|
path = name if path.nil?
|
||||||
@@ -193,7 +196,7 @@ module Precious
|
|||||||
begin
|
begin
|
||||||
wiki.write_page(name, format, params[:content], commit_message)
|
wiki.write_page(name, format, params[:content], commit_message)
|
||||||
page = wiki.page(name)
|
page = wiki.page(name)
|
||||||
redirect to("/#{page.escaped_url_path}")
|
redirect to("/#{page.escaped_url_path}") unless page.nil?
|
||||||
rescue Gollum::DuplicatePageError => e
|
rescue Gollum::DuplicatePageError => e
|
||||||
@message = "Duplicate page: #{e.message}"
|
@message = "Duplicate page: #{e.message}"
|
||||||
mustache :error
|
mustache :error
|
||||||
|
|||||||
@@ -142,6 +142,24 @@ context "Frontend" do
|
|||||||
assert last_response.ok?
|
assert last_response.ok?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
test "page create and edit with dash" do
|
||||||
|
page = 'c-d-e'
|
||||||
|
path = 'a/b/' # path must end with /
|
||||||
|
|
||||||
|
post '/create', :content => 'create_msg', :page => page,
|
||||||
|
:path => path, :format => 'markdown', :message => ''
|
||||||
|
assert_equal 'create_msg', @wiki.paged(page, path).raw_data
|
||||||
|
|
||||||
|
# must clear or create_msg will be returned
|
||||||
|
@wiki.clear_cache
|
||||||
|
|
||||||
|
# post '/edit' fails. post '/edit/' works.
|
||||||
|
post '/edit/', :content => 'edit_msg',
|
||||||
|
:page => page, :path => path, :message => ''
|
||||||
|
wpage = @wiki.paged(page, path)
|
||||||
|
assert_equal 'edit_msg', @wiki.paged(page, path).raw_data
|
||||||
|
end
|
||||||
|
|
||||||
test "guards against creation of existing page" do
|
test "guards against creation of existing page" do
|
||||||
name = "A"
|
name = "A"
|
||||||
post "/create", :content => 'abc', :page => name,
|
post "/create", :content => 'abc', :page => name,
|
||||||
|
|||||||
Reference in New Issue
Block a user