REST urls for user memberships.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@8146 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -305,15 +305,29 @@ class UsersControllerTest < ActionController::TestCase
|
||||
assert_response 403
|
||||
end
|
||||
|
||||
def test_edit_membership
|
||||
post :edit_membership, :id => 2, :membership_id => 1,
|
||||
:membership => { :role_ids => [2]}
|
||||
def test_create_membership
|
||||
assert_difference 'Member.count' do
|
||||
post :edit_membership, :id => 7, :membership => { :project_id => 3, :role_ids => [2]}
|
||||
end
|
||||
assert_redirected_to :action => 'edit', :id => '7', :tab => 'memberships'
|
||||
member = Member.first(:order => 'id DESC')
|
||||
assert_equal User.find(7), member.principal
|
||||
assert_equal [2], member.role_ids
|
||||
assert_equal 3, member.project_id
|
||||
end
|
||||
|
||||
def test_update_membership
|
||||
assert_no_difference 'Member.count' do
|
||||
put :edit_membership, :id => 2, :membership_id => 1, :membership => { :role_ids => [2]}
|
||||
end
|
||||
assert_redirected_to :action => 'edit', :id => '2', :tab => 'memberships'
|
||||
assert_equal [2], Member.find(1).role_ids
|
||||
end
|
||||
|
||||
def test_destroy_membership
|
||||
post :destroy_membership, :id => 2, :membership_id => 1
|
||||
assert_difference 'Member.count', -1 do
|
||||
delete :destroy_membership, :id => 2, :membership_id => 1
|
||||
end
|
||||
assert_redirected_to :action => 'edit', :id => '2', :tab => 'memberships'
|
||||
assert_nil Member.find_by_id(1)
|
||||
end
|
||||
|
||||
@@ -364,19 +364,19 @@ class RoutingTest < ActionController::IntegrationTest
|
||||
should_route :get, "/users/current.xml", :controller => 'users', :action => 'show', :id => 'current', :format => 'xml'
|
||||
should_route :get, "/users/new", :controller => 'users', :action => 'new'
|
||||
should_route :get, "/users/444/edit", :controller => 'users', :action => 'edit', :id => '444'
|
||||
should_route :get, "/users/222/edit/membership", :controller => 'users', :action => 'edit', :id => '222', :tab => 'membership'
|
||||
|
||||
should_route :post, "/users", :controller => 'users', :action => 'create'
|
||||
should_route :post, "/users.xml", :controller => 'users', :action => 'create', :format => 'xml'
|
||||
should_route :post, "/users/123/memberships", :controller => 'users', :action => 'edit_membership', :id => '123'
|
||||
should_route :post, "/users/123/memberships/55", :controller => 'users', :action => 'edit_membership', :id => '123', :membership_id => '55'
|
||||
should_route :post, "/users/567/memberships/12/destroy", :controller => 'users', :action => 'destroy_membership', :id => '567', :membership_id => '12'
|
||||
|
||||
should_route :put, "/users/444", :controller => 'users', :action => 'update', :id => '444'
|
||||
should_route :put, "/users/444.xml", :controller => 'users', :action => 'update', :id => '444', :format => 'xml'
|
||||
|
||||
should_route :delete, "/users/44", :controller => 'users', :action => 'destroy', :id => '44'
|
||||
should_route :delete, "/users/44.xml", :controller => 'users', :action => 'destroy', :id => '44', :format => 'xml'
|
||||
|
||||
should_route :post, "/users/123/memberships", :controller => 'users', :action => 'edit_membership', :id => '123'
|
||||
should_route :put, "/users/123/memberships/55", :controller => 'users', :action => 'edit_membership', :id => '123', :membership_id => '55'
|
||||
should_route :delete, "/users/123/memberships/55", :controller => 'users', :action => 'destroy_membership', :id => '123', :membership_id => '55'
|
||||
end
|
||||
|
||||
context "versions" do
|
||||
|
||||
Reference in New Issue
Block a user