Class: ADSL::Railtie

Inherits:
Rails::Railtie
  • Object
show all
Includes:
Verification::RailsVerification
Defined in:
lib/adsl/railtie.rb

Instance Method Summary collapse

Methods included from Verification::RailsVerification

#adsl_translate, #extract_ast, #verify_spass

Instance Method Details

#extract_actions_param_from_argsObject



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/adsl/railtie.rb', line 16

def extract_actions_param_from_args
  actions     = ("#{extract_arg('ACTION')    },#{extract_arg('ACTIONS')    }").split(',').map(&:strip).reject(&:empty?)
  controllers = ("#{extract_arg('CONTROLLER')},#{extract_arg('CONTROLLERS')}").split(',').map(&:strip).reject(&:empty?)
  if actions.empty? and controllers.empty?
    nil
  elsif actions.empty?
    controllers
  elsif controllers.empty?
    actions
  else
    action_controllers = []
    actions.each do |a|
      controllers.each do |c|
        action_controllers << "#{c}__#{a}"
      end
    end
    action_controllers
  end
end

#extract_arg(key) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/adsl/railtie.rb', line 8

def extract_arg(key)
  regex = /^#{key}\s*=\s*(.+)$/
  ARGV[1..-1].each do |arg|
    return arg.match(regex)[1] if regex =~ arg
  end
  nil
end