Sha256: f6d767eb04bf8abc8a81149a90889871564760ccfab84cb030be91a083f4067c
Contents?: true
Size: 1.88 KB
Versions: 1
Compression:
Stored size: 1.88 KB
Contents
require "test_helper" require "./lib/roger_sassc/middleware" module RogerSassc # Testing the middleware functionality # which transforms on a request based .scss to .css class TestMiddleware < ::Test::Unit::TestCase include FixtureHelper def setup @app = proc { [200, {}, ["YAM"]] } # Yet another middleware @middleware = Middleware.new @app @request = Rack::MockRequest.new(@middleware) end def test_middleware_can_be_called assert(@middleware.respond_to?(:call)) end def test_calls_rest_of_stack_when_not_css assert_equal @request.get("/my.js").body, "YAM" end def test_doesn_t_compile_scss_when_no_scss_file @middleware.resolver = mock_resolver("not-excisting.scss", nil) assert_equal @request.get("/not-excisting.css").body, "YAM" end def test_respons_with_css path = fixture_path "general.scss" expected_css = fixture "output.css" @middleware.resolver = mock_resolver("test/fixtures/general.scss", path) assert_equal @request.get("/test/fixtures/general.css").body, expected_css end def test_debug_syntax_error path = fixture_path "errors/syntax.scss" expected_css = fixture "errors/syntax.css" @middleware.resolver = mock_resolver("test/fixtures/errors/syntax.scss", path) assert_equal expected_css, @request.get("test/fixtures/errors/syntax.css").body end def test_debug_import_error path = fixture_path "errors/import.scss" expected_css = '@import "trololo";' @middleware.resolver = mock_resolver("test/fixtures/errors/import.scss", path) assert_include @request.get("test/fixtures/errors/import.css").body, expected_css end private def mock_resolver(input_url, file_path) resolver = mock resolver.expects(:url_to_path).with(equals(input_url), anything).returns(file_path) resolver end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
roger_sassc-0.2.1 | test/middleware_test.rb |