avatar

45

nstance variable checks to make sure we get what we asked for

by chrisk, 24 Jun, 2007 02:06 PM
43 45  
2323     get :new, :activity_id => activities(:bench_press).id
2424     assert_equal assigns(:exercise).weight, nil
2525     assert_equal assigns(:exercise).reps, nil
26     assert_equal assigns(:exercise).activity_id, activities(:bench_press).id
2627     assert_response :success
2728     assert_template 'new'
2829   end
------
3132     get :new, :id => exercises(:bench_press_set).id, :activity_id => activities(:bench_press).id
3233     assert_equal assigns(:exercise).weight, exercises(:bench_press_set).weight
3334     assert_equal assigns(:exercise).reps, exercises(:bench_press_set).reps
35     assert_equal assigns(:exercise).activity_id, activities(:bench_press).id
3436     assert_response :success
3537     assert_template 'new'
3638   end
------
3941     assert_difference('Exercise.count') do
4042       post :create, :activity_id => activities(:bench_press).id, :exercise => exercises(:bench_press_set).attributes
4143     end
44     assert_equal assigns(:exercise).weight, exercises(:bench_press_set).weight
45     assert_equal assigns(:exercise).reps, exercises(:bench_press_set).reps
4246     assert_response :redirect
4347     assert_redirected_to activity_path(assigns(:exercise).activity)
4448   end
------
4751     assert_difference('Exercise.count') do
4852       post :create, :activity_id => exercises(:today_set).activity_id, :exercise => exercises(:today_set).attributes
4953     end
54     assert_equal assigns(:exercise).weight, exercises(:today_set).weight
55     assert_equal assigns(:exercise).reps, exercises(:today_set).reps
5056     assert_response :redirect
5157     assert_redirected_to :controller => 'workouts', :action => 'today'
5258   end
5359 
5460   def test_should_respond_422_and_render_new_on_invalid_create
55     post :create, :id => exercises(:bench_press_set).id, :activity_id => exercises(:bench_press_set).activity_id,
56                   :exercise => { :reps => nil }
61     post :create, :activity_id => exercises(:bench_press_set).activity_id, :exercise => { :reps => nil }
62     assert_nil assigns(:exercise).reps
5763     assert_response :unprocessable_entity
5864     assert_template 'new'
5965   end
------
6167   def test_should_respond_422_and_render_edit_on_invalid_update
6268     post :update, :id => exercises(:bench_press_set).id, :activity_id => exercises(:bench_press_set).activity_id,
6369                   :exercise => { :reps => nil }
70     assert_equal assigns(:exercise).weight, exercises(:bench_press_set).weight
71     assert_nil assigns(:exercise).reps
6472     assert_response :unprocessable_entity
6573     assert_template 'edit'
6674   end
6775 
6876   def test_should_show_exercise
6977     get :show, :id => exercises(:bench_press_set).id, :activity_id => exercises(:bench_press_set).activity_id
78     assert_equal assigns(:exercise).attributes, exercises(:bench_press_set).attributes
7079     assert_response :success
7180     assert_template 'show'
7281   end
7382 
7483   def test_should_get_edit
7584     get :edit, :id => exercises(:bench_press_set).id, :activity_id => exercises(:bench_press_set).activity_id
85     assert_equal assigns(:exercise).attributes, exercises(:bench_press_set).attributes
7686     assert_response :success
7787     assert_template 'edit'
7888   end
7989 
8090   def test_should_update_exercise
8191     put :update, :id => exercises(:bench_press_set).id, :activity_id => exercises(:bench_press_set).activity_id,
82                  :exercise => exercises(:bench_press_set).attributes
92                  :exercise => { :reps => 20 }
93     assert_equal assigns(:exercise).weight, exercises(:bench_press_set).weight
94     assert_equal assigns(:exercise).reps, 20
8395     assert_response :redirect
8496     assert_redirected_to activity_path(assigns(:exercise).activity)
8597   end
8698 
8799   def test_should_redirect_to_todays_workout_if_updated_record_was_created_today
88100     put :update, :id => exercises(:today_set).id, :activity_id => exercises(:today_set).activity_id,
89                  :exercise => exercises(:today_set).attributes
101                  :exercise => { :reps => 20 }
102     assert_equal assigns(:exercise).weight, exercises(:today_set).weight
103     assert_equal assigns(:exercise).reps, 20
90104     assert_response :redirect
91105     assert_redirected_to :controller => 'workouts', :action => 'today'
92106   end
------
95109     assert_difference('Exercise.count', -1) do
96110       delete :destroy, :id => exercises(:bench_press_set).id, :activity_id => exercises(:bench_press_set).activity_id
97111     end
112     assert_equal assigns(:exercise).attributes, exercises(:bench_press_set).attributes
98113     assert_response :redirect
99114     assert_redirected_to activity_path(activities(:bench_press).id)
100115   end
101116 
102117   def test_should_redirect_to_todays_workout_if_destroyed_record_was_created_today
103118     delete :destroy, :id => exercises(:today_set).id, :activity_id => exercises(:today_set).activity_id,
104                  :exercise => exercises(:today_set).attributes
119                      :exercise => exercises(:today_set).attributes
120     assert_equal assigns(:exercise).attributes, exercises(:today_set).attributes
105121     assert_response :redirect
106122     assert_redirected_to :controller => 'workouts', :action => 'today'
107123   end