Merged r16116 (#22034).

git-svn-id: http://svn.redmine.org/redmine/branches/3.3-stable@16128 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang
2017-01-04 18:09:00 +00:00
parent a9b0564c13
commit 7ec2c27385
5 changed files with 52 additions and 16 deletions

View File

@@ -37,20 +37,17 @@ class Redmine::ApiTest::MembershipsTest < Redmine::ApiTest::Base
assert_response :success
assert_equal 'application/json', @response.content_type
json = ActiveSupport::JSON.decode(response.body)
assert_equal({
"memberships" =>
[{"id"=>1,
"project" => {"name"=>"eCookbook", "id"=>1},
"roles" => [{"name"=>"Manager", "id"=>1}],
"user" => {"name"=>"John Smith", "id"=>2}},
{"id"=>2,
"project" => {"name"=>"eCookbook", "id"=>1},
"roles" => [{"name"=>"Developer", "id"=>2}],
"user" => {"name"=>"Dave Lopper", "id"=>3}}],
"limit" => 25,
"total_count" => 2,
"offset" => 0},
json)
assert_equal 3, json["total_count"]
assert_equal 25, json["limit"]
assert_equal 0, json["offset"]
assert_include({
"id"=>1,
"project" => {"name"=>"eCookbook", "id"=>1},
"roles" => [{"name"=>"Manager", "id"=>1}],
"user" => {"name"=>"John Smith", "id"=>2}
},
json["memberships"]
)
end
test "GET /projects/:project_id/memberships.xml should succeed for closed project" do
@@ -61,6 +58,15 @@ class Redmine::ApiTest::MembershipsTest < Redmine::ApiTest::Base
assert_response :success
end
test "GET /projects/:project_id/memberships.xml should include locked users" do
assert User.find(3).lock!
get '/projects/ecookbook/memberships.xml', {}, credentials('jsmith')
assert_response :success
assert_select 'memberships[type=array] membership id', :text => '2' do
assert_select '~ user[id="3"][name="Dave Lopper"]'
end
end
test "POST /projects/:project_id/memberships.xml should create the membership" do
assert_difference 'Member.count' do
post '/projects/1/memberships.xml', {:membership => {:user_id => 7, :role_ids => [2,3]}}, credentials('jsmith')