Class: MySpec::Generators::ControllerGenerator

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Includes:
MyScaffoldGenerator
Defined in:
lib/generators/my_spec/controller/controller_generator.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.source_rootObject



28
29
30
# File 'lib/generators/my_spec/controller/controller_generator.rb', line 28

def self.source_root
  @source_root ||= File.expand_path("templates", File.dirname(__FILE__))
end

Instance Method Details

#generate_controller_specObject



9
10
11
12
13
14
# File 'lib/generators/my_spec/controller/controller_generator.rb', line 9

def generate_controller_spec
  return unless options[:controller_specs]

  template 'controller_spec.rb',
           File.join('spec/controllers', class_path, "#{file_name}_controller_spec.rb")
end

#generate_view_specsObject



16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/generators/my_spec/controller/controller_generator.rb', line 16

def generate_view_specs
  return if actions.empty?
  return unless options[:view_specs]

  empty_directory File.join("spec", "views", file_path)

  actions.each do |action|
    @action = action
    template 'view_spec.rb',
             File.join("spec", "views", file_path, "#{@action}.html.#{options[:template_engine]}_spec.rb")
  end
end