Sha256: 7dbc9d6d584caa70ed170fa23272da471a7f232d8d0d5b241cbeb39421cf7732
Contents?: true
Size: 862 Bytes
Versions: 2
Compression:
Stored size: 862 Bytes
Contents
require 'appraisal/dependency' module Appraisal # Load bundler Gemfiles and merge dependencies class Gemfile attr_reader :dependencies def initialize @dependencies = {} end def load(path) run(IO.read(path)) end def run(definitions) instance_eval(definitions, __FILE__, __LINE__) end def gem(name, *requirements) @dependencies[name] = Dependency.new(name, requirements) end def source(source) @source = source end def to_s %{source "#{@source}"\n} << dependencies.values.map { |dependency| dependency.to_s }.join("\n") end def dup Gemfile.new.tap do |gemfile| gemfile.source @source dependencies.values.each do |dependency| gemfile.gem(dependency.name, *dependency.requirements) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
appraisal-0.2.0 | lib/appraisal/gemfile.rb |
appraisal-0.1 | lib/appraisal/gemfile.rb |