Sha256: 8991b3912358c9bcfee1db42065c2f933a8934479694c415819a08af14b93d00

Contents?: true

Size: 962 Bytes

Versions: 164

Compression:

Stored size: 962 Bytes

Contents

require "danger/plugin_support/gems_resolver"

module Danger
  class PluginFileResolver
    # Takes an array of files, gems or nothing, then resolves them into
    # paths that should be sent into the documentation parser
    def initialize(references)
      @refs = references
    end

    # When given existing paths, map to absolute & existing paths
    # When given a list of gems, resolve for list of gems
    # When empty, imply you want to test the current lib folder as a plugin
    def resolve
      if !refs.nil? and refs.select { |ref| File.file? ref }.any?
        paths = refs.select { |ref| File.file? ref }.map { |path| File.expand_path(path) }
      elsif refs and refs.kind_of? Array
        paths, gems = GemsResolver.new(refs).call
      else
        paths = Dir.glob(File.join(".", "lib/**/*.rb")).map { |path| File.expand_path(path) }
      end

      { paths: paths, gems: gems || [] }
    end

    private

    attr_reader :refs
  end
end

Version data entries

164 entries across 164 versions & 2 rubygems

Version Path
danger-9.5.1 lib/danger/plugin_support/plugin_file_resolver.rb
danger-9.5.0 lib/danger/plugin_support/plugin_file_resolver.rb
danger-9.4.3 lib/danger/plugin_support/plugin_file_resolver.rb
danger-9.4.2 lib/danger/plugin_support/plugin_file_resolver.rb
danger-9.4.1 lib/danger/plugin_support/plugin_file_resolver.rb
danger-9.4.0 lib/danger/plugin_support/plugin_file_resolver.rb
danger-9.3.2 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.36 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.35 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.34 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.33 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.32 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.31 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.30 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.29 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.28 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.27 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.26 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.25 lib/danger/plugin_support/plugin_file_resolver.rb
danger-additional-logging-0.0.24 lib/danger/plugin_support/plugin_file_resolver.rb