Class: Rubysmith::Builders::Guard

Inherits:
Object
  • Object
show all
Defined in:
lib/rubysmith/builders/guard.rb

Overview

Builds project skeleton Guard support for a red, green, refactor loop.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(configuration, builder: Builder) ⇒ Guard

Returns a new instance of Guard.



9
10
11
12
# File 'lib/rubysmith/builders/guard.rb', line 9

def initialize configuration, builder: Builder
  @configuration = configuration
  @builder = builder
end

Class Method Details

.call(configuration, builder: Builder) ⇒ Object



7
# File 'lib/rubysmith/builders/guard.rb', line 7

def self.call(configuration, builder: Builder) = new(configuration, builder: builder).call

Instance Method Details

#callObject



14
15
16
17
18
19
20
21
# File 'lib/rubysmith/builders/guard.rb', line 14

def call
  return unless configuration.build_guard

  builder.call(configuration.with(template_path: "%project_name%/bin/guard.erb"))
         .render
         .permit 0o755
  builder.call(configuration.with(template_path: "%project_name%/Guardfile.erb")).render
end