OSDN Git Service

Fix integration test case using old API
authoreagletmt <eagletmt@gmail.com>
Wed, 31 Oct 2012 09:53:37 +0000 (18:53 +0900)
committereagletmt <eagletmt@gmail.com>
Wed, 31 Oct 2012 09:53:37 +0000 (18:53 +0900)
CutenServer/test/integration/access_achievement_json_test.rb

index ffdf8a2..9c6b567 100644 (file)
@@ -8,46 +8,45 @@ class AccessAchievementJsonTest < ActionDispatch::IntegrationTest
   end
 
   test 'get achievements' do
+    FactoryGirl.create :achievement, :user => @user, :task => @task
     get "/achievements.json", :auth_token => @auth_token
     assert_response :success
     as = JSON.parse @response.body
-    assert_equal as.map { |a| a['id'] }.sort, @user.achievements.map(&:id).sort
+    assert_equal @user.achievements.map(&:result).sort, as.map { |a| a['result'] }.sort
   end
 
   test 'add an achievement' do
-    post "/achievements.json", :auth_token => @auth_token, :achievement => { :task_id => @task.id, :result => '100' }
-    assert_response :created
+    put "/tasks/#{@task.id}/achievement.json", :auth_token => @auth_token, :achievement => { :result => '100' }
+    assert_response :success
     j = JSON.parse @response.body
     assert_equal @task.id, j['task_id']
     assert_equal '100', j['result']
   end
 
   test 'update an achievement' do
-    post '/achievements.json', :auth_token => @auth_token, :achievement => { :task_id => @task.id, :result => '1, 4, 7' }
-    assert_response :created
-    achievement = JSON.parse @response.body
+    put "/tasks/#{@task.id}/achievement.json", :auth_token => @auth_token, :achievement => { :result => '1, 4, 7' }
+    assert_response :success
 
-    put "/achievements/#{achievement['id']}.json", :auth_token => @auth_token, :achievement => { :result => '2,0,10' }
+    put "/tasks/#{@task.id}/achievement.json", :auth_token => @auth_token, :achievement => { :result => '2,0,10' }
     assert_response :success
 
-    get "/achievements/#{achievement['id']}.json", :auth_token => @auth_token
-    alt = JSON.parse @response.body
-    assert_equal '2,4,10', alt['result']
+    get "/tasks/#{@task.id}/achievement.json", :auth_token => @auth_token
+    achievement = JSON.parse @response.body
+    assert_equal '2,4,10', achievement['result']
   end
 
   test 'failed to update an achievement' do
-    post '/achievements.json', :auth_token => @auth_token, :achievement => { :task_id => @task.id, :result => '1, 4, 7' }
-    assert_response :created
-    achievement = JSON.parse @response.body
+    put "/tasks/#{@task.id}/achievement.json", :auth_token => @auth_token, :achievement => { :result => '1, 4, 7' }
+    assert_response :success
 
-    put "/achievements/#{achievement['id']}.json", :auth_token => @auth_token, :achievement => { :result => '2,0' }
+    put "/tasks/#{@task.id}/achievement.json", :auth_token => @auth_token, :achievement => { :result => '2,0' }
     assert_response 422
     j = JSON.parse @response.body
     assert j.has_key?('result')
 
-    get "/achievements/#{achievement['id']}.json", :auth_token => @auth_token
-    alt = JSON.parse @response.body
-    assert_equal achievement['result'], alt['result']
+    get "/tasks/#{@task.id}/achievement.json", :auth_token => @auth_token
+    achievement = JSON.parse @response.body
+    assert_equal '1,4,7', achievement['result']
   end
 
   test 'create new achievement via /tasks/:task_id/achievement' do