Sha256: 30a843933a2f258cb44380858442d2bb3a9914d4a98a39e7e5631b3d78cd8933

Contents?: true

Size: 649 Bytes

Versions: 7

Compression:

Stored size: 649 Bytes

Contents

module Appraisal
  # Dependency on a gem and optional version requirements
  class Dependency
    attr_reader :name, :requirements

    def initialize(name, requirements)
      @name = name
      @requirements = requirements
    end

    def to_s
      if no_requirements?
        gem_name
      else
        "#{gem_name}, #{inspect_requirements}"
      end
    end

    private

    def gem_name
      %{gem "#{name}"}
    end

    def no_requirements?
      requirements.nil? || requirements.empty?
    end

    def inspect_requirements
      requirements.map { |requirement| requirement.inspect.gsub(/^\{|\}$/, '') }.join(", ")
    end
  end
end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
judge-2.0.5 vendor/bundle/ruby/2.1.0/gems/appraisal-0.5.1/lib/appraisal/dependency.rb
appraisal-1.0.0.beta3 lib/appraisal/dependency.rb
appraisal-1.0.0.beta2 lib/appraisal/dependency.rb
appraisal-1.0.0.beta1 lib/appraisal/dependency.rb
appraisal-0.5.2 lib/appraisal/dependency.rb
appraisal-0.5.1 lib/appraisal/dependency.rb
appraisal-0.5.0 lib/appraisal/dependency.rb