require 'digest/md5'
+
module ApplicationHelper
# Check if a particular controller is the current one
args.any? { |v| v.to_s.downcase == controller.controller_name }
end
+ # Check if a partcular action is the current one
+ #
+ # args - One or more action names to check
+ #
+ # Examples
+ #
+ # # On Projects#new
+ # current_action?(:new) # => true
+ # current_action?(:create) # => false
+ # current_action?(:new, :create) # => true
+ def current_action?(*args)
+ args.any? { |v| v.to_s.downcase == action_name }
+ end
+
def gravatar_icon(user_email = '', size = 40)
if Gitlab.config.disable_gravatar? || user_email.blank?
'no_avatar.png'
end
end
+ describe 'current_action?' do
+ before do
+ stub!(:action_name).and_return('foo')
+ end
+
+ it "returns true when action matches argument" do
+ current_action?(:foo).should be_true
+ end
+
+ it "returns false when action does not match argument" do
+ current_action?(:bar).should_not be_true
+ end
+
+ it "should take any number of arguments" do
+ current_action?(:baz, :bar).should_not be_true
+ current_action?(:baz, :bar, :foo).should be_true
+ end
+ end
+
describe "gravatar_icon" do
let(:user_email) { 'user@email.com' }