added user feedback functional test

This commit is contained in:
albert
2011-02-01 18:08:01 -05:00
parent df20d9233b
commit 8eb3451fb4
11 changed files with 103 additions and 9 deletions

View File

@@ -10,7 +10,7 @@ class ApplicationController < ActionController::Base
protected
def access_denied
previous_url = params[:url] || request.request_uri
previous_url = params[:url] || request.fullpath
respond_to do |fmt|
fmt.html do

View File

@@ -1,19 +1,39 @@
class UserFeedbackController < ApplicationController
before_filter :privileged_only, :only => [:new, :edit, :create, :update, :destroy]
respond_to :html, :xml, :json
rescue_from User::PrivilegeError, :with => "static/access_denied"
def new
@user_feedback = UserFeedback.new
respond_with(@user_feedback)
end
def edit
@user_feedback = UserFeedback.find(params[:id])
check_privilege(@user_feedback)
respond_with(@user_feedback)
end
def index
@search = UserFeedback.search(params[:search])
@user_feedback = @search.paginate(:page => params[:page])
respond_with(@user_feedback)
end
def create
end
def update
@user_feedback = UserFeedback.create(params[:user_feedback])
respond_with(@user_feedback)
end
def destroy
@user_feedback = UserFeedback.find(params[:id])
check_privilege(@user_feedback)
@user_feedback.destroy
respond_with(@user_feedback, :location => user_feedback_path)
end
private
def check_privilege(user_feedback)
raise User::PrivilegeError unless (user_feedback.creator_id == CurrentUser.id || CurrentUser.is_moderator?)
end
end

View File

@@ -232,7 +232,7 @@ class Upload < ActiveRecord::Base
end
def temp_file_path
@temp_file_path ||= File.join(Rails.root, "tmp", "#{Time.now.to_f}.#{$PROCESS_ID}")
@temp_file_path ||= File.join(Rails.root, "tmp", "upload_#{Time.now.to_f}.#{$PROCESS_ID}")
end
end

View File

@@ -3,7 +3,7 @@ class UserFeedback < ActiveRecord::Base
belongs_to :user
belongs_to :creator, :class_name => "User"
before_validation :initialize_creator, :on => :create
attr_accessible :body, :user_id, :is_positive
attr_accessible :body, :user_id, :is_positive, :user_name
validates_presence_of :user, :creator, :body
validate :creator_is_privileged
@@ -11,6 +11,10 @@ class UserFeedback < ActiveRecord::Base
self.creator_id = CurrentUser.id
end
def user_name=(name)
self.user_id = User.name_to_id(name)
end
def creator_is_privileged
if !creator.is_privileged?
errors[:creator] << "must be privileged"

View File

View File

View File