class Inspec::Requirement

def self.from_lock_entry(entry, cwd, cache, backend, opts = {})

def self.from_lock_entry(entry, cwd, cache, backend, opts = {})
  req = new(entry[:name],
            entry[:version_constraints],
            cache,
            cwd,
            entry[:resolved_source].merge(backend: backend).merge(opts))
  locked_deps = []
  Array(entry[:dependencies]).each do |dep_entry|
    locked_deps << Inspec::Requirement.from_lock_entry(dep_entry, cwd, cache, backend, opts)
  end
  req.lock_deps(locked_deps)
  req
end