Rename a number of methods in the map_bugs controller
This commit is contained in:
parent
bb2c0c76ae
commit
f4928d0e95
8 changed files with 45 additions and 46 deletions
|
@ -1,20 +1,19 @@
|
||||||
class MapBugsController < ApplicationController
|
class MapBugsController < ApplicationController
|
||||||
|
|
||||||
layout 'site', :only => [:my_bugs]
|
layout 'site', :only => [:mine]
|
||||||
|
|
||||||
before_filter :check_api_readable
|
before_filter :check_api_readable
|
||||||
before_filter :authorize_web, :only => [:add_bug, :close_bug, :edit_bug, :delete, :my_bugs]
|
before_filter :authorize_web, :only => [:create, :close, :update, :delete, :mine]
|
||||||
before_filter :check_api_writable, :only => [:add_bug, :close_bug, :edit_bug, :delete]
|
before_filter :check_api_writable, :only => [:create, :close, :update, :delete]
|
||||||
before_filter :require_moderator, :only => [:delete]
|
before_filter :require_moderator, :only => [:delete]
|
||||||
before_filter :set_locale, :only => [:my_bugs]
|
before_filter :set_locale, :only => [:mine]
|
||||||
after_filter :compress_output
|
after_filter :compress_output
|
||||||
around_filter :api_call_handle_error, :api_call_timeout
|
around_filter :api_call_handle_error, :api_call_timeout
|
||||||
|
|
||||||
# Help methods for checking boundary sanity and area size
|
# Help methods for checking boundary sanity and area size
|
||||||
include MapBoundary
|
include MapBoundary
|
||||||
|
|
||||||
def get_bugs
|
def list
|
||||||
|
|
||||||
# Figure out the bbox
|
# Figure out the bbox
|
||||||
bbox = params['bbox']
|
bbox = params['bbox']
|
||||||
|
|
||||||
|
@ -42,16 +41,16 @@ class MapBugsController < ApplicationController
|
||||||
@bugs = MapBug.find_by_area(@min_lat, @min_lon, @max_lat, @max_lon, :include => :comments, :order => "updated_at DESC", :limit => limit, :conditions => conditions)
|
@bugs = MapBug.find_by_area(@min_lat, @min_lon, @max_lat, @max_lon, :include => :comments, :order => "updated_at DESC", :limit => limit, :conditions => conditions)
|
||||||
|
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html {render :template => 'map_bugs/get_bugs.rjs', :content_type => "text/javascript"}
|
format.html {render :template => 'map_bugs/list.rjs', :content_type => "text/javascript"}
|
||||||
format.rss {render :template => 'map_bugs/get_bugs.rss'}
|
format.rss {render :template => 'map_bugs/list.rss'}
|
||||||
format.js
|
format.js
|
||||||
format.xml {render :template => 'map_bugs/get_bugs.xml'}
|
format.xml {render :template => 'map_bugs/list.xml'}
|
||||||
format.json { render :json => @bugs.to_json(:methods => [:lat, :lon], :only => [:id, :status, :created_at], :include => { :comments => { :only => [:author_name, :created_at, :body]}}) }
|
format.json { render :json => @bugs.to_json(:methods => [:lat, :lon], :only => [:id, :status, :created_at], :include => { :comments => { :only => [:author_name, :created_at, :body]}}) }
|
||||||
format.gpx {render :template => 'map_bugs/get_bugs.gpx'}
|
format.gpx {render :template => 'map_bugs/list.gpx'}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def add_bug
|
def create
|
||||||
raise OSM::APIBadUserInput.new("No lat was given") unless params['lat']
|
raise OSM::APIBadUserInput.new("No lat was given") unless params['lat']
|
||||||
raise OSM::APIBadUserInput.new("No lon was given") unless params['lon']
|
raise OSM::APIBadUserInput.new("No lon was given") unless params['lon']
|
||||||
raise OSM::APIBadUserInput.new("No text was given") unless params['text']
|
raise OSM::APIBadUserInput.new("No text was given") unless params['text']
|
||||||
|
@ -89,7 +88,7 @@ class MapBugsController < ApplicationController
|
||||||
render_ok
|
render_ok
|
||||||
end
|
end
|
||||||
|
|
||||||
def edit_bug
|
def update
|
||||||
raise OSM::APIBadUserInput.new("No id was given") unless params['id']
|
raise OSM::APIBadUserInput.new("No id was given") unless params['id']
|
||||||
raise OSM::APIBadUserInput.new("No text was given") unless params['text']
|
raise OSM::APIBadUserInput.new("No text was given") unless params['text']
|
||||||
|
|
||||||
|
@ -109,7 +108,7 @@ class MapBugsController < ApplicationController
|
||||||
render_ok
|
render_ok
|
||||||
end
|
end
|
||||||
|
|
||||||
def close_bug
|
def close
|
||||||
raise OSM::APIBadUserInput.new("No id was given") unless params['id']
|
raise OSM::APIBadUserInput.new("No id was given") unless params['id']
|
||||||
|
|
||||||
id = params['id'].to_i
|
id = params['id'].to_i
|
||||||
|
@ -187,16 +186,16 @@ class MapBugsController < ApplicationController
|
||||||
:conditions => conditions)
|
:conditions => conditions)
|
||||||
@bugs = bugs2.uniq
|
@bugs = bugs2.uniq
|
||||||
respond_to do |format|
|
respond_to do |format|
|
||||||
format.html {render :template => 'map_bugs/get_bugs.rjs', :content_type => "text/javascript"}
|
format.html {render :template => 'map_bugs/list.rjs', :content_type => "text/javascript"}
|
||||||
format.rss {render :template => 'map_bugs/get_bugs.rss'}
|
format.rss {render :template => 'map_bugs/list.rss'}
|
||||||
format.js
|
format.js
|
||||||
format.xml {render :template => 'map_bugs/get_bugs.xml'}
|
format.xml {render :template => 'map_bugs/list.xml'}
|
||||||
format.json { render :json => @bugs.to_json(:methods => [:lat, :lon], :only => [:id, :status, :created_at], :include => { :comments => { :only => [:author_name, :created_at, :body]}}) }
|
format.json { render :json => @bugs.to_json(:methods => [:lat, :lon], :only => [:id, :status, :created_at], :include => { :comments => { :only => [:author_name, :created_at, :body]}}) }
|
||||||
format.gpx {render :template => 'map_bugs/get_bugs.gpx'}
|
format.gpx {render :template => 'map_bugs/list.gpx'}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def my_bugs
|
def mine
|
||||||
if params[:display_name]
|
if params[:display_name]
|
||||||
@user2 = User.find_by_display_name(params[:display_name], :conditions => { :status => ["active", "confirmed"] })
|
@user2 = User.find_by_display_name(params[:display_name], :conditions => { :status => ["active", "confirmed"] })
|
||||||
|
|
||||||
|
|
|
@ -76,19 +76,19 @@ ActionController::Routing::Routes.draw do |map|
|
||||||
map.connect "api/#{API_VERSION}/swf/trackpoints", :controller =>'swf', :action =>'trackpoints'
|
map.connect "api/#{API_VERSION}/swf/trackpoints", :controller =>'swf', :action =>'trackpoints'
|
||||||
|
|
||||||
# Map Bugs API
|
# Map Bugs API
|
||||||
map.connect "api/#{API_VERSION}/bugs", :controller => 'map_bugs', :action => 'get_bugs'
|
map.connect "api/#{API_VERSION}/bugs", :controller => 'map_bugs', :action => 'list'
|
||||||
map.connect "api/#{API_VERSION}/bugs/search", :controller => 'map_bugs', :action => 'search'
|
map.connect "api/#{API_VERSION}/bugs/search", :controller => 'map_bugs', :action => 'search'
|
||||||
map.connect "api/#{API_VERSION}/bugs/rss", :controller =>'map_bugs', :action => 'rss'
|
map.connect "api/#{API_VERSION}/bugs/rss", :controller =>'map_bugs', :action => 'rss'
|
||||||
map.connect "api/#{API_VERSION}/bug/create", :controller => 'map_bugs', :action => 'add_bug'
|
map.connect "api/#{API_VERSION}/bug/create", :controller => 'map_bugs', :action => 'create'
|
||||||
map.connect "api/#{API_VERSION}/bug/:id/comment", :controller => 'map_bugs', :action => 'edit_bug', :id => /\d+/
|
map.connect "api/#{API_VERSION}/bug/:id/comment", :controller => 'map_bugs', :action => 'update', :id => /\d+/
|
||||||
map.connect "api/#{API_VERSION}/bug/:id/close", :controller => 'map_bugs', :action => 'close_bug', :id => /\d+/
|
map.connect "api/#{API_VERSION}/bug/:id/close", :controller => 'map_bugs', :action => 'close', :id => /\d+/
|
||||||
map.connect "api/#{API_VERSION}/bug/:id", :controller => 'map_bugs', :action => 'read', :id => /\d+/, :conditions => { :method => :get }
|
map.connect "api/#{API_VERSION}/bug/:id", :controller => 'map_bugs', :action => 'read', :id => /\d+/, :conditions => { :method => :get }
|
||||||
map.connect "api/#{API_VERSION}/bug/:id", :controller => 'map_bugs', :action => 'delete', :id => /\d+/, :conditions => { :method => :delete }
|
map.connect "api/#{API_VERSION}/bug/:id", :controller => 'map_bugs', :action => 'delete', :id => /\d+/, :conditions => { :method => :delete }
|
||||||
map.connect "api/#{API_VERSION}/bugs/getBugs", :controller => 'map_bugs', :action => 'get_bugs'
|
map.connect "api/#{API_VERSION}/bugs/getBugs", :controller => 'map_bugs', :action => 'list'
|
||||||
map.connect "api/#{API_VERSION}/bugs/addPOIexec", :controller => 'map_bugs', :action => 'add_bug'
|
map.connect "api/#{API_VERSION}/bugs/addPOIexec", :controller => 'map_bugs', :action => 'create'
|
||||||
map.connect "api/#{API_VERSION}/bugs/closePOIexec", :controller => 'map_bugs', :action => 'close_bug'
|
map.connect "api/#{API_VERSION}/bugs/closePOIexec", :controller => 'map_bugs', :action => 'close'
|
||||||
map.connect "api/#{API_VERSION}/bugs/editPOIexec", :controller => 'map_bugs', :action => 'edit_bug'
|
map.connect "api/#{API_VERSION}/bugs/editPOIexec", :controller => 'map_bugs', :action => 'update'
|
||||||
map.connect "api/#{API_VERSION}/bugs/getGPX", :controller => 'map_bugs', :action => 'get_bugs', :format => :gpx
|
map.connect "api/#{API_VERSION}/bugs/getGPX", :controller => 'map_bugs', :action => 'list', :format => :gpx
|
||||||
map.connect "api/#{API_VERSION}/bugs/getRSSfeed", :controller => 'map_bugs', :action => 'rss'
|
map.connect "api/#{API_VERSION}/bugs/getRSSfeed", :controller => 'map_bugs', :action => 'rss'
|
||||||
|
|
||||||
# Data browsing
|
# Data browsing
|
||||||
|
@ -105,7 +105,7 @@ ActionController::Routing::Routes.draw do |map|
|
||||||
map.connect '/browse/changesets/feed', :controller => 'changeset', :action => 'list', :format => :atom
|
map.connect '/browse/changesets/feed', :controller => 'changeset', :action => 'list', :format => :atom
|
||||||
map.connect '/browse/changesets', :controller => 'changeset', :action => 'list'
|
map.connect '/browse/changesets', :controller => 'changeset', :action => 'list'
|
||||||
map.connect '/browse/bug/:id', :controller => 'browse', :action => 'bug', :id => /\d+/
|
map.connect '/browse/bug/:id', :controller => 'browse', :action => 'bug', :id => /\d+/
|
||||||
map.connect '/user/:display_name/bugs', :controller => 'map_bugs', :action => 'my_bugs'
|
map.connect '/user/:display_name/bugs', :controller => 'map_bugs', :action => 'mine'
|
||||||
map.connect '/browse', :controller => 'changeset', :action => 'list'
|
map.connect '/browse', :controller => 'changeset', :action => 'list'
|
||||||
|
|
||||||
# web site
|
# web site
|
||||||
|
|
|
@ -6,7 +6,7 @@ class MapBugsControllerTest < ActionController::TestCase
|
||||||
def test_map_bug_create_success
|
def test_map_bug_create_success
|
||||||
assert_difference('MapBug.count') do
|
assert_difference('MapBug.count') do
|
||||||
assert_difference('MapBugComment.count') do
|
assert_difference('MapBugComment.count') do
|
||||||
post :add_bug, {:lat => -1.0, :lon => -1.0, :name => "new_tester", :text => "This is a comment"}
|
post :create, {:lat => -1.0, :lon => -1.0, :name => "new_tester", :text => "This is a comment"}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
@ -21,7 +21,7 @@ class MapBugsControllerTest < ActionController::TestCase
|
||||||
|
|
||||||
def test_map_bug_comment_create_success
|
def test_map_bug_comment_create_success
|
||||||
assert_difference('MapBugComment.count') do
|
assert_difference('MapBugComment.count') do
|
||||||
post :edit_bug, {:id => 2, :name => "new_tester2", :text => "This is an additional comment"}
|
post :update, {:id => 2, :name => "new_tester2", :text => "This is an additional comment"}
|
||||||
end
|
end
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ class MapBugsControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_map_bug_close_success
|
def test_map_bug_close_success
|
||||||
post :close_bug, {:id => 2}
|
post :close, {:id => 2}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
|
||||||
get :read, {:id => 2, :format => 'json'}
|
get :read, {:id => 2, :format => 'json'}
|
||||||
|
@ -62,44 +62,44 @@ class MapBugsControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_get_bugs_success
|
def test_get_bugs_success
|
||||||
get :get_bugs, {:bbox=>'1,1,1.2,1.2'}
|
get :list, {:bbox=>'1,1,1.2,1.2'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
|
||||||
get :get_bugs, {:bbox=>'1,1,1.2,1.2', :format => 'rss'}
|
get :list, {:bbox=>'1,1,1.2,1.2', :format => 'rss'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
|
||||||
get :get_bugs, {:bbox=>'1,1,1.2,1.2', :format => 'json'}
|
get :list, {:bbox=>'1,1,1.2,1.2', :format => 'json'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
|
||||||
get :get_bugs, {:bbox=>'1,1,1.2,1.2', :format => 'xml'}
|
get :list, {:bbox=>'1,1,1.2,1.2', :format => 'xml'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
|
||||||
get :get_bugs, {:bbox=>'1,1,1.2,1.2', :format => 'gpx'}
|
get :list, {:bbox=>'1,1,1.2,1.2', :format => 'gpx'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_get_bugs_large_area_success
|
def test_get_bugs_large_area_success
|
||||||
get :get_bugs, {:bbox=>'-2.5,-2.5,2.5,2.5'}
|
get :list, {:bbox=>'-2.5,-2.5,2.5,2.5'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_get_bugs_large_area_bad_request
|
def test_get_bugs_large_area_bad_request
|
||||||
get :get_bugs, {:bbox=>'-10,-10,12,12'}
|
get :list, {:bbox=>'-10,-10,12,12'}
|
||||||
assert_response :bad_request
|
assert_response :bad_request
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_get_bugs_closed_7_success
|
def test_get_bugs_closed_7_success
|
||||||
get :get_bugs, {:bbox=>'1,1,1.2,1.2', :closed => '7'}
|
get :list, {:bbox=>'1,1,1.2,1.2', :closed => '7'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_get_bugs_closed_0_success
|
def test_get_bugs_closed_0_success
|
||||||
get :get_bugs, {:bbox=>'1,1,1.2,1.2', :closed => '0'}
|
get :list, {:bbox=>'1,1,1.2,1.2', :closed => '0'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_get_bugs_closed_n1_success
|
def test_get_bugs_closed_n1_success
|
||||||
get :get_bugs, {:bbox=>'1,1,1.2,1.2', :closed => '-1'}
|
get :list, {:bbox=>'1,1,1.2,1.2', :closed => '-1'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -130,25 +130,25 @@ class MapBugsControllerTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_user_bugs_success
|
def test_user_bugs_success
|
||||||
get :my_bugs, {:display_name=>'test'}
|
get :mine, {:display_name=>'test'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
|
||||||
get :my_bugs, {:display_name=>'pulibc_test2'}
|
get :mine, {:display_name=>'pulibc_test2'}
|
||||||
assert_response :success
|
assert_response :success
|
||||||
|
|
||||||
get :my_bugs, {:display_name=>'non-existent'}
|
get :mine, {:display_name=>'non-existent'}
|
||||||
assert_response :not_found
|
assert_response :not_found
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_map_bug_comment_create_not_found
|
def test_map_bug_comment_create_not_found
|
||||||
assert_no_difference('MapBugComment.count') do
|
assert_no_difference('MapBugComment.count') do
|
||||||
post :edit_bug, {:id => 12345, :name => "new_tester", :text => "This is an additional comment"}
|
post :update, {:id => 12345, :name => "new_tester", :text => "This is an additional comment"}
|
||||||
end
|
end
|
||||||
assert_response :not_found
|
assert_response :not_found
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_map_bug_close_not_found
|
def test_map_bug_close_not_found
|
||||||
post :close_bug, {:id => 12345}
|
post :close, {:id => 12345}
|
||||||
assert_response :not_found
|
assert_response :not_found
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue