Sha256: 6cb194bdd7cc9846fdaad8cdc8074a236def2611a8f84c0f0c73ccaf2e1e7bc8
Contents?: true
Size: 1.45 KB
Versions: 1
Compression:
Stored size: 1.45 KB
Contents
# frozen_string_literal: true require 'eac_ruby_utils/gems_registry' require 'eac_ruby_utils/patches/object/if_respond' require 'eac_ruby_utils/patches/object/to_pathname' module EacRubyUtils module Rspec class SetupManager GEMS_REGISTRY_SUFFIX = 'Rspec::Setup' REGISTERED_MODULE_PERFORM_METHOD = :perform class << self def create(app_root_path, rspec_config = nil) if rspec_config new(app_root_path, rspec_config) else ::RSpec.configure { |new_rspec_config| new(app_root_path, new_rspec_config) } end end end attr_reader :app_root_path, :rspec_config def initialize(app_root_path, rspec_config) @app_root_path = app_root_path.to_pathname @rspec_config = rspec_config include_registry end # @return [EacRubyUtils::GemsRegistry] def gems_registry @gems_registry ||= ::EacRubyUtils::GemsRegistry.new(GEMS_REGISTRY_SUFFIX) end protected def include_registry gems_registry.registered.each do |gem| include_gem_registered(gem.registered_module) end end # @param gem [EacRubyUtils::GemsRegistry::Gem] def include_gem_registered(registered_module) extend(registered_module) registered_module.send(REGISTERED_MODULE_PERFORM_METHOD, self) if registered_module.respond_to?(REGISTERED_MODULE_PERFORM_METHOD) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
eac_ruby_utils-0.73.0 | lib/eac_ruby_utils/rspec/setup_manager.rb |