Class: Spiker::Generators::Multi

Inherits:
BaseGenerator show all
Defined in:
lib/spiker/generators/multi.rb

Overview

Generates multiple spike files, seperating tests from the tested code. For when the spike gets too hairy for a single file.

Instance Method Summary collapse

Methods inherited from BaseGenerator

#create_docker_files, #create_env_file, #create_gem_file, #create_guard_file, #create_spike_directory, #generator_name, #run_bundle_install, #run_git_init, source_root

Instance Method Details

#create_additional_spike_directoriesObject



9
10
11
12
# File 'lib/spiker/generators/multi.rb', line 9

def create_additional_spike_directories
  empty_directory("#{spike_name}/lib")
  empty_directory("#{spike_name}/test")
end

#create_app_filesObject



14
15
16
17
# File 'lib/spiker/generators/multi.rb', line 14

def create_app_files
  template("#{generator_name}/app.rb.tt",
           "#{spike_name}/lib/#{multi_options[:name_in_snake_case]}.rb", multi_options)
end

#create_rake_fileObject



25
26
27
# File 'lib/spiker/generators/multi.rb', line 25

def create_rake_file
  template("#{generator_name}/Rakefile.tt", "#{spike_name}/Rakefile")
end

#create_readme_fileObject



29
30
31
# File 'lib/spiker/generators/multi.rb', line 29

def create_readme_file
  template("#{generator_name}/README.md.tt", "#{spike_name}/README.md", multi_options)
end

#create_test_filesObject



19
20
21
22
23
# File 'lib/spiker/generators/multi.rb', line 19

def create_test_files
  template("#{generator_name}/app_test.rb.tt",
           "#{spike_name}/test/#{multi_options[:name_in_snake_case]}_test.rb", multi_options)
  template("#{generator_name}/test_helper.rb.tt", "#{spike_name}/test/test_helper.rb", multi_options)
end