INNER CODE UNIT · Ruby
self
thesp0nge/dawnscanner · lib/dawn/core.rb:106
def self.detect_mvc(target)
# Issue#268
return detect_mvc_from_file(target) if (File.file?(target) and File.extname(target) == ".rb")
raise ArgumentError.new("you must set target directory") if target.nil?
my_dir = Dir.pwd
Dir.chdir(target)
raise ArgumentError.new("no Gemfile.lock in #{target}") unless File.exist?("Gemfile.lock")
lockfile = Bundler::LockfileParser.new(Bundler.read_file("Gemfile.lock"))
Dir.chdir(my_dir)
lockfile.specs.each do |s|
return Dawn::Rails.new(target) if s.name == "rails"
return Dawn::Padrino.new(target) if s.name == "padrino"
end