class Cucumber::InstallGenerator
Constants
- DEFAULT_SHEBANG
Public Instance Methods
create_database()
click to toggle source
# File lib/generators/cucumber/install_generator.rb, line 49 def create_database return unless File.exist?('config/database.yml') return unless File.read('config/database.yml').include? 'cucumber:' gsub_file 'config/database.yml', /^test:.*\n/, "test: &test\n" gsub_file 'config/database.yml', /\z/, "\ncucumber:\n <<: *test\n" # Since gsub_file doesn't ask the user, just inform user that the file was overwritten. puts ' force config/database.yml' end
create_feature_support()
click to toggle source
# File lib/generators/cucumber/install_generator.rb, line 35 def create_feature_support empty_directory 'features/support' if spork? template 'support/rails_spork.rb.erb', 'features/support/env.rb' else template 'support/rails.rb.erb', 'features/support/env.rb' end end
create_scripts()
click to toggle source
# File lib/generators/cucumber/install_generator.rb, line 25 def create_scripts copy_file 'script/cucumber', 'script/cucumber' chmod 'script/cucumber', 0755 end
create_step_definitions()
click to toggle source
# File lib/generators/cucumber/install_generator.rb, line 30 def create_step_definitions empty_directory 'features/step_definitions' create_file 'features/step_definitions/.gitkeep' end
create_tasks()
click to toggle source
# File lib/generators/cucumber/install_generator.rb, line 44 def create_tasks empty_directory 'lib/tasks' template 'tasks/cucumber.rake.erb', 'lib/tasks/cucumber.rake' end
create_templates()
click to toggle source
# File lib/generators/cucumber/install_generator.rb, line 21 def create_templates template 'config/cucumber.yml.erb', 'config/cucumber.yml' end
Protected Instance Methods
embed_file(source, indent = '')
click to toggle source
# File lib/generators/cucumber/install_generator.rb, line 66 def embed_file(source, indent = '') IO.read(File.join(self.class.source_root, source)).gsub(/^/, indent) end
embed_template(source, indent = '')
click to toggle source
# File lib/generators/cucumber/install_generator.rb, line 70 def embed_template(source, indent = '') template = File.join(self.class.source_root, source) if RUBY_VERSION >= '2.6' ERB.new(IO.read(template), trim_mode: '-').result(binding).gsub(/^/, indent) else ERB.new(IO.read(template), nil, '-').result(binding).gsub(/^/, indent) end end
spork?()
click to toggle source
# File lib/generators/cucumber/install_generator.rb, line 62 def spork? options[:spork] end