Sha256: ae7ad171facb4b3dd81b46fd0fe837fd6c48d52440dc6bbc3d21b71c5788fa4c

Contents?: true

Size: 596 Bytes

Versions: 12

Compression:

Stored size: 596 Bytes

Contents

require 'term/ansicolor'

module RakeNBake
  class DependencyChecker

    C = Term::ANSIColor

    def initialize dependencies
      @dependencies = Array(dependencies)
    end

    def check silent = false
      @results = @dependencies.each_with_object({}) do |dep, results|
        results[dep] = system "which #{dep} >/dev/null"
        unless silent
          results[dep] ? print(C.green, '.', C.clear) : print(C.red, 'F', C.clear)
        end
      end
    end

    def missing
      @results ||= check(true)
      @results.select { |_, present| present == false }.keys
    end

  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
rake-n-bake-3.1.2 lib/dependency_checker.rb
rake-n-bake-3.1.1 lib/dependency_checker.rb
rake-n-bake-3.1.0 lib/dependency_checker.rb
rake-n-bake-3.0.0 lib/dependency_checker.rb
rake-n-bake-2.1.4 lib/dependency_checker.rb
rake-n-bake-2.1.3 lib/dependency_checker.rb
rake-n-bake-2.1.2 lib/dependency_checker.rb
rake-n-bake-2.1.1 lib/dependency_checker.rb
rake-n-bake-2.1.0 lib/dependency_checker.rb
rake-n-bake-2.0.1 lib/dependency_checker.rb
rake-n-bake-2.0.0 lib/dependency_checker.rb
rake-n-bake-1.4.3 lib/dependency_checker.rb