Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

89 lines (76 sloc) 2.351 kb
require File.expand_path('../helper', __FILE__)
begin
require 'sass'
class ScssTest < Test::Unit::TestCase
def scss_app(options = {}, &block)
mock_app {
set :views, File.dirname(__FILE__) + '/views'
set options
get '/', &block
}
get '/'
end
it 'renders inline Scss strings' do
scss_app { scss "#scss {\n background-color: white; }\n" }
assert ok?
assert_equal "#scss {\n background-color: white; }\n", body
end
it 'defaults content type to css' do
scss_app { scss "#scss {\n background-color: white; }\n" }
assert ok?
assert_equal "text/css;charset=utf-8", response['Content-Type']
end
it 'defaults allows setting content type per route' do
scss_app do
content_type :html
scss "#scss {\n background-color: white; }\n"
end
assert ok?
assert_equal "text/html;charset=utf-8", response['Content-Type']
end
it 'defaults allows setting content type globally' do
scss_app(:scss => { :content_type => 'html' }) do
scss "#scss {\n background-color: white; }\n"
end
assert ok?
assert_equal "text/html;charset=utf-8", response['Content-Type']
end
it 'renders .scss files in views path' do
scss_app { scss :hello }
assert ok?
assert_equal "#scss {\n background-color: white; }\n", body
end
it 'ignores the layout option' do
scss_app { scss :hello, :layout => :layout2 }
assert ok?
assert_equal "#scss {\n background-color: white; }\n", body
end
it "raises error if template not found" do
mock_app {
get('/') { scss :no_such_template }
}
assert_raise(Errno::ENOENT) { get('/') }
end
it "passes scss options to the scss engine" do
scss_app {
scss "#scss {\n background-color: white;\n color: black\n}",
:style => :compact
}
assert ok?
assert_equal "#scss { background-color: white; color: black; }\n", body
end
it "passes default scss options to the scss engine" do
mock_app {
set :scss, {:style => :compact} # default scss style is :nested
get '/' do
scss "#scss {\n background-color: white;\n color: black;\n}"
end
}
get '/'
assert ok?
assert_equal "#scss { background-color: white; color: black; }\n", body
end
end
rescue LoadError
warn "#{$!.to_s}: skipping scss tests"
end
Jump to Line
Something went wrong with that request. Please try again.