Mercurial > hg > soundsoftware-site
comparison test/integration/api_test/projects_test.rb @ 1517:dffacf8a6908 redmine-2.5
Update to Redmine SVN revision 13367 on 2.5-stable branch
author | Chris Cannam |
---|---|
date | Tue, 09 Sep 2014 09:29:00 +0100 |
parents | e248c7af89ec |
children |
comparison
equal
deleted
inserted
replaced
1516:b450a9d58aed | 1517:dffacf8a6908 |
---|---|
47 test "GET /projects.xml should return projects" do | 47 test "GET /projects.xml should return projects" do |
48 get '/projects.xml' | 48 get '/projects.xml' |
49 assert_response :success | 49 assert_response :success |
50 assert_equal 'application/xml', @response.content_type | 50 assert_equal 'application/xml', @response.content_type |
51 | 51 |
52 assert_tag :tag => 'projects', | 52 assert_select 'projects>project>id', :text => '1' |
53 :child => {:tag => 'project', :child => {:tag => 'id', :content => '1'}} | 53 assert_select 'projects>project>status', :text => '1' |
54 end | 54 end |
55 | 55 |
56 test "GET /projects.json should return projects" do | 56 test "GET /projects.json should return projects" do |
57 get '/projects.json' | 57 get '/projects.json' |
58 assert_response :success | 58 assert_response :success |
68 test "GET /projects/:id.xml should return the project" do | 68 test "GET /projects/:id.xml should return the project" do |
69 get '/projects/1.xml' | 69 get '/projects/1.xml' |
70 assert_response :success | 70 assert_response :success |
71 assert_equal 'application/xml', @response.content_type | 71 assert_equal 'application/xml', @response.content_type |
72 | 72 |
73 assert_tag :tag => 'project', | 73 assert_select 'project>id', :text => '1' |
74 :child => {:tag => 'id', :content => '1'} | 74 assert_select 'project>status', :text => '1' |
75 assert_tag :tag => 'custom_field', | 75 assert_select 'custom_field[name=Development status]', :text => 'Stable' |
76 :attributes => {:name => 'Development status'}, :content => 'Stable' | |
77 | 76 |
78 assert_no_tag 'trackers' | 77 assert_no_tag 'trackers' |
79 assert_no_tag 'issue_categories' | 78 assert_no_tag 'issue_categories' |
80 end | 79 end |
81 | 80 |
138 post '/projects.xml', | 137 post '/projects.xml', |
139 {:project => {:name => 'API test', :identifier => 'api-test'}}, | 138 {:project => {:name => 'API test', :identifier => 'api-test'}}, |
140 credentials('admin') | 139 credentials('admin') |
141 end | 140 end |
142 | 141 |
143 project = Project.first(:order => 'id DESC') | 142 project = Project.order('id DESC').first |
144 assert_equal 'API test', project.name | 143 assert_equal 'API test', project.name |
145 assert_equal 'api-test', project.identifier | 144 assert_equal 'api-test', project.identifier |
146 assert_equal ['issue_tracking', 'repository'], project.enabled_module_names.sort | 145 assert_equal ['issue_tracking', 'repository'], project.enabled_module_names.sort |
147 assert_equal Tracker.all.size, project.trackers.size | 146 assert_equal Tracker.all.size, project.trackers.size |
148 | 147 |
156 post '/projects.xml', | 155 post '/projects.xml', |
157 {:project => {:name => 'API test', :identifier => 'api-test', :enabled_module_names => ['issue_tracking', 'news', 'time_tracking']}}, | 156 {:project => {:name => 'API test', :identifier => 'api-test', :enabled_module_names => ['issue_tracking', 'news', 'time_tracking']}}, |
158 credentials('admin') | 157 credentials('admin') |
159 end | 158 end |
160 | 159 |
161 project = Project.first(:order => 'id DESC') | 160 project = Project.order('id DESC').first |
162 assert_equal ['issue_tracking', 'news', 'time_tracking'], project.enabled_module_names.sort | 161 assert_equal ['issue_tracking', 'news', 'time_tracking'], project.enabled_module_names.sort |
163 end | 162 end |
164 | 163 |
165 test "POST /projects.xml should accept tracker_ids attribute" do | 164 test "POST /projects.xml should accept tracker_ids attribute" do |
166 assert_difference('Project.count') do | 165 assert_difference('Project.count') do |
167 post '/projects.xml', | 166 post '/projects.xml', |
168 {:project => {:name => 'API test', :identifier => 'api-test', :tracker_ids => [1, 3]}}, | 167 {:project => {:name => 'API test', :identifier => 'api-test', :tracker_ids => [1, 3]}}, |
169 credentials('admin') | 168 credentials('admin') |
170 end | 169 end |
171 | 170 |
172 project = Project.first(:order => 'id DESC') | 171 project = Project.order('id DESC').first |
173 assert_equal [1, 3], project.trackers.map(&:id).sort | 172 assert_equal [1, 3], project.trackers.map(&:id).sort |
174 end | 173 end |
175 | 174 |
176 test "POST /projects.xml with invalid parameters should return errors" do | 175 test "POST /projects.xml with invalid parameters should return errors" do |
177 assert_no_difference('Project.count') do | 176 assert_no_difference('Project.count') do |