lib/erd/generator_runner.rb in erd-0.4.0 vs lib/erd/generator_runner.rb in erd-0.5.0
- old
+ new
@@ -1,5 +1,7 @@
+# frozen_string_literal: true
+
require 'rails/generators'
module Erd
class GenaratorRunner
class << self
@@ -18,14 +20,16 @@
end
private
# a dirty workaround to make rspec-rails run
def overwriting_argv(value, &block)
- original_argv = ARGV
- Object.const_set :ARGV, value
+ original_argv = ARGV.dup
+ ARGV.clear
+ ARGV.concat value
block.call
ensure
- Object.const_set :ARGV, original_argv
+ ARGV.clear
+ ARGV.concat original_argv
end
def execute_generator(type, name, options = nil)
overwriting_argv([name, options]) do
Rails::Generators.configure! Rails.application.config.generators