twbs--bootstrap-sass/test/node_mincer_test.rb

36 lines
1003 B
Ruby

require 'test_helper'
require 'json'
class NodeMincerTest < Minitest::Test
DUMMY_PATH = 'test/dummy_node_mincer'
def test_font_helper_without_suffix
assert_match %r(url\(['"]?/assets/.*eot['"]?\)), @css
end
def test_font_helper_with_suffix_sharp
assert_match %r(url\(['"]?/assets/.*svg#.+['"]?\)), @css
end
def test_font_helper_with_suffix_question
assert_match %r(url\(['"]?/assets/.*eot\?.*['"]?\)), @css
end
def test_image_helper
assert_match %r(url\(['"]?/assets/apple-touch-icon-144-precomposed.*png['"]?\)), @css
end
def setup
tmp_dir = File.join GEM_PATH, 'tmp/node-mincer'
success = Dir.chdir DUMMY_PATH do
silence_stdout_if !ENV['VERBOSE'] do
system 'node', 'manifest.js', tmp_dir
end
end
assert success, 'Node.js Mincer compilation failed'
manifest = JSON.parse(File.read("#{tmp_dir}/manifest.json"))
css_name = manifest['assets']['application.css']
@css = File.read("#{tmp_dir}/#{css_name}")
end
end