Class: SpecHelperGenerator
- Inherits:
-
Object
- Object
- SpecHelperGenerator
- Defined in:
- lib/serverspec_launcher/generators/spec_helper_generator.rb
Overview
Generate the spec_helpr.rb file
Instance Method Summary collapse
- #create_spec_dir ⇒ Object
- #generate ⇒ Object
-
#initialize(root_path = nil) ⇒ SpecHelperGenerator
constructor
A new instance of SpecHelperGenerator.
- #rakefile_template ⇒ Object
Constructor Details
#initialize(root_path = nil) ⇒ SpecHelperGenerator
Returns a new instance of SpecHelperGenerator.
6 7 8 9 10 |
# File 'lib/serverspec_launcher/generators/spec_helper_generator.rb', line 6 def initialize(root_path = nil) path = root_path ? "#{root_path}/" : '' @template_path = File.('../../../../templates', __FILE__) @spec_helper = "#{path}spec/spec_helper.rb" end |
Instance Method Details
#create_spec_dir ⇒ Object
16 17 18 |
# File 'lib/serverspec_launcher/generators/spec_helper_generator.rb', line 16 def create_spec_dir Dir.mkdir File.dirname(@spec_helper) unless File.exist?(File.dirname(@spec_helper)) end |
#generate ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/serverspec_launcher/generators/spec_helper_generator.rb', line 20 def generate if File.exist?(@spec_helper) str = File.read(@spec_helper) new_str = if str.include? "require 'serverspec_launcher/spec_helper'" str else str.sub(/((require .*\n)+)/, "\\1require 'serverspec_launcher/spec_helper'\n") end File.open(@spec_helper, 'w') { |file| file.write new_str } else create_spec_dir renderer = ERB.new rakefile_template File.open(@spec_helper, 'w') { |file| file.write renderer.result } end end |
#rakefile_template ⇒ Object
12 13 14 |
# File 'lib/serverspec_launcher/generators/spec_helper_generator.rb', line 12 def rakefile_template File.read "#{@template_path}/spec_helper.rb.erb" end |