lib/bundler/fixture.rb in bundler-fixture-1.2.0 vs lib/bundler/fixture.rb in bundler-fixture-1.2.1
- old
+ new
@@ -23,10 +23,18 @@
# Default is empty Array.
def create_lockfile(gem_dependencies:,
source_specs: [],
ensure_sources: true,
update_gems: [])
+ defn = create_definition(gem_dependencies: gem_dependencies,
+ source_specs: source_specs,
+ ensure_sources: ensure_sources,
+ update_gems: update_gems)
+ defn.lock(lockfile_filename)
+ end
+
+ def create_definition(gem_dependencies:, source_specs:, ensure_sources:, update_gems:)
index = Bundler::Index.new
Array(source_specs).each { |s| index << s }
Array(gem_dependencies).each do |dep|
index << create_spec(dep.name, dep.requirement.requirements.first.last)
@@ -36,10 +44,10 @@
defn = Bundler::Definition.new(lockfile_filename, Array(gem_dependencies), @sources, update_hash)
defn.instance_variable_set('@index', index)
# reading an existing lockfile in will overwrite the hacked up sources with detected
# ones from lockfile, so this needs to go here after the constructor is called.
source.instance_variable_set('@specs', index)
- defn.lock(lockfile_filename)
+ defn
end
def lockfile_filename
File.join(@dir, 'Gemfile.lock')
end