Sha256: 0b4e1d95b0b4d13cf08b06e453ed00e13edb038ae2849f8d31c06e118714516c

Contents?: true

Size: 1023 Bytes

Versions: 8

Compression:

Stored size: 1023 Bytes

Contents

# frozen_string_literal: true

module Reek
  module Configuration
    #
    # Configuration validator module.
    #
    module ConfigurationValidator
      private

      # :reek:UtilityFunction
      def smell_type?(key)
        case key
        when Class
          true
        when String
          begin
            Reek::SmellDetectors.const_defined? key
          rescue NameError
            false
          end
        end
      end

      # :reek:UtilityFunction
      def key_to_smell_detector(key)
        case key
        when Class
          key
        else
          Reek::SmellDetectors.const_get key
        end
      end

      def error_message_for_file_given(pathname)
        "Configuration error: `#{pathname}` is supposed to be a directory but is a file"
      end

      def with_valid_directory(path)
        directory = Pathname.new path.to_s.chomp('/')
        abort(error_message_for_file_given(directory)) if directory.file?
        yield directory if block_given?
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
reek-4.8.2 lib/reek/configuration/configuration_validator.rb
reek-4.8.1 lib/reek/configuration/configuration_validator.rb
reek-4.8.0 lib/reek/configuration/configuration_validator.rb
reek-4.7.3 lib/reek/configuration/configuration_validator.rb
reek-4.7.2 lib/reek/configuration/configuration_validator.rb
reek-4.7.1 lib/reek/configuration/configuration_validator.rb
reek-4.7.0 lib/reek/configuration/configuration_validator.rb
reek-4.6.2 lib/reek/configuration/configuration_validator.rb