Class: Specimen::Generator::SpecimenProject
- Inherits:
-
Commands::BaseGroupCommand
- Object
- Thor::Group
- Commands::BaseGroupCommand
- Specimen::Generator::SpecimenProject
- Includes:
- Specimen::Generator
- Defined in:
- lib/specimen/generator/specimen_project.rb
Class Method Summary collapse
Instance Method Summary collapse
- #execute ⇒ Object
- #finish ⇒ Object
-
#initialize(_, _, _) ⇒ SpecimenProject
constructor
A new instance of SpecimenProject.
- #start ⇒ Object
Methods included from Specimen::Generator
Methods inherited from Commands::BaseGroupCommand
Constructor Details
#initialize(_, _, _) ⇒ SpecimenProject
Returns a new instance of SpecimenProject.
16 17 18 19 |
# File 'lib/specimen/generator/specimen_project.rb', line 16 def initialize(_, _, _) super @opts = .to_h.deep_symbolize_keys end |
Class Method Details
.source_root ⇒ Object
12 13 14 |
# File 'lib/specimen/generator/specimen_project.rb', line 12 def self.source_root "#{File.dirname(__FILE__)}/templates" end |
Instance Method Details
#execute ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/specimen/generator/specimen_project.rb', line 29 def execute empty_directory(@config.project_name) create_root_files inside @config.project_root do if @config.cucumber? empty_directory('features/step_definitions') empty_directory('features/support') end empty_directory('spec/support') end end |
#finish ⇒ Object
43 44 45 |
# File 'lib/specimen/generator/specimen_project.rb', line 43 def finish say("created new Specimen project in #{@config.project_root}", Color::GREEN) end |
#start ⇒ Object
21 22 23 24 25 26 27 |
# File 'lib/specimen/generator/specimen_project.rb', line 21 def start say('Initialize new Specimen project', Color::BOLD) @opts[:project_name].empty? ? ask_for_name : @opts[:project_name] @opts[:destination_root] = destination_root @config = SpecimenProjectConfig.new(@opts) end |