compass/test/test_helper.rb
2011-07-26 16:20:51 -04:00

65 lines
1.7 KiB
Ruby

need_gems = false
lib_dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
$:.unshift(lib_dir) unless $:.include?(lib_dir)
test_dir = File.dirname(__FILE__)
$:.unshift(test_dir) unless $:.include?(test_dir)
# allows testing with edge Haml by creating a test/haml symlink
linked_haml = File.dirname(__FILE__) + '/haml'
if File.exists?(linked_haml) && !$:.include?(linked_haml + '/lib')
puts "[ using linked Haml ]"
$:.unshift linked_haml + '/lib'
require 'sass'
else
need_gems = true
end
require 'rubygems' if need_gems
require 'compass'
require 'test/unit'
%w(command_line diff io rails test_case).each do |helper|
require "helpers/#{helper}"
end
class Test::Unit::TestCase
include Compass::Diff
include Compass::TestCaseHelper
include Compass::IoHelper
extend Compass::TestCaseHelper::ClassMethods
end
module SpriteHelper
URI = "selectors/*.png"
def init_sprite_helper
@images_src_path = File.join(File.dirname(__FILE__), 'fixtures', 'sprites', 'public', 'images')
@images_tmp_path = File.join(File.dirname(__FILE__), 'fixtures', 'sprites', 'public', 'images-tmp')
end
def sprite_map_test(options)
importer = Compass::SpriteImporter.new
path, name = Compass::SpriteImporter.path_and_name(URI)
sprite_names = Compass::SpriteImporter.sprite_names(URI)
sass_engine = Compass::SpriteImporter.sass_engine(URI, name, importer, options)
Compass::SassExtensions::Sprites::SpriteMap.new(sprite_names.map{|n| "selectors/#{n}.png"}, path, name, sass_engine, options)
end
def create_sprite_temp
init_sprite_helper
::FileUtils.cp_r @images_src_path, @images_tmp_path
end
def clean_up_sprites
init_sprite_helper
::FileUtils.rm_r @images_tmp_path
end
end