More work on test coverage
This commit is contained in:
parent
9ec625e352
commit
857f0f460b
5 changed files with 429 additions and 23 deletions
|
@ -621,7 +621,7 @@ class AmfController < ApplicationController
|
|||
return -1, t("application.setup_user_auth.blocked") if user.blocks.active.exists?
|
||||
return -1, "You must accept the contributor terms before you can edit." if REQUIRE_TERMS_AGREED && user.terms_agreed.nil?
|
||||
|
||||
return -2, "Server error - way is only #{points.length} points long." if pointlist.length < 2
|
||||
return -2, "Server error - way is only #{pointlist.length} points long." if pointlist.length < 2
|
||||
|
||||
return -1, "One of the tags is invalid. Linux users may need to upgrade to Flash Player 10.1." unless tags_ok(attributes)
|
||||
attributes = strip_non_xml_chars attributes
|
||||
|
@ -738,7 +738,11 @@ class AmfController < ApplicationController
|
|||
new_node = nil
|
||||
Node.transaction do
|
||||
if id > 0
|
||||
node = Node.find(id)
|
||||
begin
|
||||
node = Node.find(id)
|
||||
rescue ActiveRecord::RecordNotFound
|
||||
return [-4, "node", id]
|
||||
end
|
||||
|
||||
unless visible || node.ways.empty?
|
||||
return -1, "Point #{id} has since become part of a way, so you cannot save it as a POI.", id, id, version
|
||||
|
@ -782,14 +786,16 @@ class AmfController < ApplicationController
|
|||
def getpoi(id, timestamp) #:doc:
|
||||
amf_handle_error("'getpoi' #{id}", "node", id) do
|
||||
id = id.to_i
|
||||
n = Node.find(id)
|
||||
v = n.version
|
||||
unless timestamp == ""
|
||||
n = OldNode.where("node_id = ? AND timestamp <= ?", id, timestamp).unredacted.order("timestamp DESC").first
|
||||
n = Node.where(:id => id).first
|
||||
if n
|
||||
v = n.version
|
||||
unless timestamp == ""
|
||||
n = OldNode.where("node_id = ? AND timestamp <= ?", id, timestamp).unredacted.order("timestamp DESC").first
|
||||
end
|
||||
end
|
||||
|
||||
if n
|
||||
return [0, "", n.id, n.lon, n.lat, n.tags, v]
|
||||
return [0, "", id, n.lon, n.lat, n.tags, v]
|
||||
else
|
||||
return [-4, "node", id]
|
||||
end
|
||||
|
|
|
@ -102,6 +102,7 @@ class Trace < ActiveRecord::Base
|
|||
gzipped = filetype =~ /gzip compressed/
|
||||
bzipped = filetype =~ /bzip2 compressed/
|
||||
zipped = filetype =~ /Zip archive/
|
||||
tarred = filetype =~ /tar archive/
|
||||
|
||||
if gzipped
|
||||
mimetype = "application/x-gzip"
|
||||
|
@ -109,6 +110,8 @@ class Trace < ActiveRecord::Base
|
|||
mimetype = "application/x-bzip2"
|
||||
elsif zipped
|
||||
mimetype = "application/x-zip"
|
||||
elsif tarred
|
||||
mimetype = "application/x-tar"
|
||||
else
|
||||
mimetype = "application/gpx+xml"
|
||||
end
|
||||
|
@ -238,7 +241,7 @@ class Trace < ActiveRecord::Base
|
|||
elsif bzipped
|
||||
system("bunzip2 -c #{trace_name} > #{tmpfile.path}")
|
||||
elsif zipped
|
||||
system("unzip -p #{trace_name} -x '__MACOSX/*' > #{tmpfile.path}")
|
||||
system("unzip -p #{trace_name} -x '__MACOSX/*' > #{tmpfile.path} 2> /dev/null")
|
||||
end
|
||||
|
||||
tmpfile.unlink
|
||||
|
@ -260,12 +263,8 @@ class Trace < ActiveRecord::Base
|
|||
f_lon = 0
|
||||
first = true
|
||||
|
||||
# If there are any existing points for this trace then delete
|
||||
# them - we check for existing points first to avoid locking
|
||||
# the table in the common case where there aren't any.
|
||||
if Tracepoint.where(:gpx_id => id).exists?
|
||||
Tracepoint.delete_all(:gpx_id => id)
|
||||
end
|
||||
# If there are any existing points for this trace then delete them
|
||||
Tracepoint.delete_all(:gpx_id => id)
|
||||
|
||||
gpx.points do |point|
|
||||
if first
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue