lib/rubysmith/builders/rspec/helper.rb in rubysmith-0.16.1 vs lib/rubysmith/builders/rspec/helper.rb in rubysmith-1.0.0
- old
+ new
@@ -1,25 +1,31 @@
# frozen_string_literal: true
+require "refinements/structs"
+
module Rubysmith
module Builders
module RSpec
# Builds RSpec spec helper for project skeleton.
class Helper
+ using Refinements::Structs
+
def self.call(...) = new(...).call
def initialize configuration, builder: Builder
@configuration = configuration
@builder = builder
end
def call
- return unless configuration.build_rspec
+ return configuration unless configuration.build_rspec
- builder.call(configuration.with(template_path: "%project_name%/spec/spec_helper.rb.erb"))
+ builder.call(configuration.merge(template_path: "%project_name%/spec/spec_helper.rb.erb"))
.render
.replace(/\n{3,}/, "\n\n")
.replace(/\n\s{2}(?=(require|Simple|using|Pathname|Dir))/, "\n")
+
+ configuration
end
private
attr_reader :configuration, :builder