]> source.dussan.org Git - redmine.git/commitdiff
Add inherit_members to projects API response (#32002).
authorGo MAEDA <maeda@farend.jp>
Thu, 5 Sep 2019 04:08:30 +0000 (04:08 +0000)
committerGo MAEDA <maeda@farend.jp>
Thu, 5 Sep 2019 04:08:30 +0000 (04:08 +0000)
Patch by Yuichi HARADA.

git-svn-id: http://svn.redmine.org/redmine/trunk@18431 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/views/projects/index.api.rsb
app/views/projects/show.api.rsb
test/integration/api_test/projects_test.rb

index d309af2415cb8ab2512171b259eaeb50b04bfa5d..03c7c0c77502ce57e55d29c8cc006b2b62ce9df1 100644 (file)
@@ -8,6 +8,7 @@ api.array :projects, api_meta(:total_count => @project_count, :offset => @offset
       api.parent(:id => project.parent.id, :name => project.parent.name) if project.parent && project.parent.visible?
       api.status      project.status
       api.is_public   project.is_public?
+      api.inherit_members project.inherit_members?
 
       render_api_custom_values project.visible_custom_field_values, api
       render_api_includes(project, api)
index 6e1958a34ec2118de193fe242aaf0cbc6017ce17..240b1888325e3a1ed94837e4d705a3241677068c 100644 (file)
@@ -7,6 +7,7 @@ api.project do
   api.parent(:id => @project.parent.id, :name => @project.parent.name) if @project.parent && @project.parent.visible?
   api.status      @project.status
   api.is_public   @project.is_public?
+  api.inherit_members @project.inherit_members?
 
   render_api_custom_values @project.visible_custom_field_values, api
   render_api_includes(@project, api)
index ee5c53a7ca1d19601d686c03e5a93b0f3485051d..6c7496fc40a83755f2b5b0c05b4829635eaddb05 100644 (file)
@@ -30,13 +30,20 @@ class Redmine::ApiTest::ProjectsTest < Redmine::ApiTest::Base
   end
 
   test "GET /projects.xml should return projects" do
+    project = Project.find(1)
+    project.inherit_members = '1'
+    project.save!
+
     get '/projects.xml'
     assert_response :success
     assert_equal 'application/xml', @response.content_type
 
-    assert_select 'projects>project>id', :text => '1'
-    assert_select 'projects>project>status', :text => '1'
-    assert_select 'projects>project>is_public', :text => 'true'
+    assert_select 'projects>project:first-child' do
+      assert_select '>id', :text => '1'
+      assert_select '>status', :text => '1'
+      assert_select '>is_public', :text => 'true'
+      assert_select '>inherit_members', :text => 'true'
+    end
   end
 
   test "GET /projects.json should return projects" do
@@ -49,6 +56,7 @@ class Redmine::ApiTest::ProjectsTest < Redmine::ApiTest::Base
     assert_kind_of Array, json['projects']
     assert_kind_of Hash, json['projects'].first
     assert json['projects'].first.has_key?('id')
+    assert json['projects'].first.has_key?('inherit_members')
   end
 
   test "GET /projects.xml with include=issue_categories should return categories" do
@@ -76,6 +84,8 @@ class Redmine::ApiTest::ProjectsTest < Redmine::ApiTest::Base
   end
 
   test "GET /projects/:id.xml should return the project" do
+    Project.find(1).update!(:inherit_members => '1')
+
     get '/projects/1.xml'
     assert_response :success
     assert_equal 'application/xml', @response.content_type
@@ -83,6 +93,7 @@ class Redmine::ApiTest::ProjectsTest < Redmine::ApiTest::Base
     assert_select 'project>id', :text => '1'
     assert_select 'project>status', :text => '1'
     assert_select 'project>is_public', :text => 'true'
+    assert_select 'project>inherit_members', :text => 'true'
     assert_select 'custom_field[name="Development status"]', :text => 'Stable'
 
     assert_select 'trackers', 0
@@ -96,6 +107,7 @@ class Redmine::ApiTest::ProjectsTest < Redmine::ApiTest::Base
     assert_kind_of Hash, json
     assert_kind_of Hash, json['project']
     assert_equal 1, json['project']['id']
+    assert_equal false, json['project']['inherit_members']
   end
 
   test "GET /projects/:id.xml with hidden custom fields should not display hidden custom fields" do