Sha256: 3816658bca68aa22caeb43812b51174f669d743e8fd57d65e0681b75aa337125
Contents?: true
Size: 1.25 KB
Versions: 19
Compression:
Stored size: 1.25 KB
Contents
require_relative 'actions/actions_generator' require_relative 'automation/automation_generator' require_relative 'common_generator' require_relative 'cucumber/cucumber_generator' require_relative 'helper_generator' require_relative 'rspec/rspec_generator' # :reek:FeatureEnvy { enabled: false } # :reek:UtilityFunction { enabled: false } module InvokeGenerators module_function def generate_framework(structure = {}) generators = %w[Automation Actions Common Helpers] framework = structure[:framework] add_generator(generators, framework.capitalize) generators.each do |generator| invoke_generator({ automation: structure[:automation], framework:, generator:, name: structure[:name] }) end end def add_generator(generators, *gens) gens.each { |generator| generators.push generator } end def invoke_generator(structure = {}) Object.const_get("#{structure[:generator]}Generator") .new([structure[:automation], structure[:framework], structure[:name]]).invoke_all end def to_bool(string) return unless string.is_a? String string.downcase == 'true' end end
Version data entries
19 entries across 19 versions & 1 rubygems