Change FileBlob to accept a base path

This commit is contained in:
Joshua Peek
2011-05-25 13:12:01 -05:00
parent ed9888cf9c
commit a00013a077
3 changed files with 10 additions and 6 deletions

View File

@@ -4,8 +4,9 @@ module Linguist
class FileBlob
include BlobHelper
def initialize(path, name = path)
@path, @name = path, name
def initialize(path, base_path = nil)
@path = path
@name = base_path ? path.sub("#{base_path}/", '') : path
end
attr_reader :name

View File

@@ -10,8 +10,8 @@ module Linguist
def self.from_directory(base_path)
paths = Dir["#{base_path}/**/*"].inject({}) do |h, path|
if File.file?(path)
name = path.sub("#{base_path}/", '')
h[name] = FileBlob.new(path, name)
blob = FileBlob.new(path, base_path)
h[blob.name] = blob
end
h
end

View File

@@ -6,9 +6,12 @@ require 'mime/types'
class TestBlob < Test::Unit::TestCase
include Linguist
def fixtures_path
File.expand_path("../fixtures/blob", __FILE__)
end
def blob(name)
path = File.expand_path("../fixtures/blob/#{name}", __FILE__)
FileBlob.new(path, name)
FileBlob.new(File.join(fixtures_path, name), fixtures_path)
end
def test_name