Changeset 56
- Timestamp:
- 11/27/07 17:47:43 (12 months ago)
- Location:
- trunk
- Files:
-
- 3 modified
-
CHANGELOG.txt (modified) (1 diff)
-
app/controllers/projects_controller.rb (modified) (1 diff)
-
test/functional/projects_controller_test.rb (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/CHANGELOG.txt
r51 r56 5 5 * Introduce a 5 second sleep between mongrel stop and start while restarting' 6 6 7 * Only admins can manage recipes, hosts, and users. Normal users can only view.7 * Only admins can manage projects, recipes, hosts, and users. Normal users can only view. 8 8 9 9 * Show also all recent deployments in dashboard -
trunk/app/controllers/projects_controller.rb
r43 r56 2 2 3 3 before_filter :load_templates, :only => [:new, :create, :edit, :update] 4 before_filter :ensure_admin, :only => [:new, :edit, :destroy, :create, :update] 4 5 5 6 # GET /projects/dashboard -
trunk/test/functional/projects_controller_test.rb
r1 r56 14 14 15 15 @project = create_new_project 16 @user = login17 16 end 18 17 19 18 def test_should_get_index 19 @user = login 20 20 21 get :index 21 22 assert_response :success … … 23 24 end 24 25 25 def test_should_get_new 26 def test_non_admin_should_not_get_new 27 @user = login 28 29 get :new 30 assert_response :redirect 31 end 32 33 def test_admin_should_get_new 34 @user = admin_login 35 26 36 get :new 27 37 assert_response :success 28 38 end 29 39 30 def test_should_create_project 40 def test_non_admin_should_not_create_project 41 @user = login 42 43 Project.delete_all 44 old_count = Project.count 45 post :create, :project => { :name => 'Project Alpha', :template => 'rails'} 46 assert_equal old_count, Project.count 47 48 assert_response :redirect 49 end 50 51 def test_admin_should_create_project 52 @user = admin_login 53 31 54 Project.delete_all 32 55 old_count = Project.count … … 39 62 end 40 63 41 def test_should_show_project 64 def test_should_show_project 65 @user = login 66 42 67 get :show, :id => @project.id 43 68 assert_response :success 44 69 end 45 70 46 def test_should_get_edit 71 def test_non_admin_should_not_get_edit 72 @user = login 73 74 get :edit, :id => @project.id 75 assert_response :redirect 76 end 77 78 def test_admin_should_get_edit 79 @user = admin_login 80 47 81 get :edit, :id => @project.id 48 82 assert_response :success 49 83 end 50 84 51 def test_should_update_project 85 def test_non_admin_should_not_update_project 86 @user = login 87 88 put :update, :id => @project.id, :project => { :name => 'Project Jochen', :template => 'mongrel_rails'} 89 assert_response :redirect 90 @project.reload 91 assert_not_equal 'Project Jochen', @project.name 92 end 93 94 def test_admin_should_update_project 95 @user = admin_login 96 52 97 put :update, :id => @project.id, :project => { :name => 'Project Jochen', :template => 'mongrel_rails'} 53 98 assert_redirected_to project_path(assigns(:project)) … … 56 101 end 57 102 58 def test_should_destroy_project 103 def test_non_admin_should_not_destroy_project 104 @user = login 105 106 old_count = Project.count 107 delete :destroy, :id => @project.id 108 assert_equal old_count, Project.count 109 110 assert_response :redirect 111 end 112 113 def test_admin_should_destroy_project 114 @user = admin_login 115 59 116 old_count = Project.count 60 117 delete :destroy, :id => @project.id
