Exposed sprockets_environment from Jasmine::Headless #152

Open
marcusmateus wants to merge 1 commits from marcusmateus/expose_sprockets_environment into master
4 changed files with 26 additions and 2 deletions

View File

@ -23,7 +23,7 @@ gem 'mocha'
gem 'cucumber' gem 'cucumber'
gem 'jquery-rails', '~> 1.0.0' gem 'jquery-rails', '> 1.0'
gem 'ejs' gem 'ejs'
gem 'guard-jasmine-headless-webkit', :git => 'git://github.com/johnbintz/guard-jasmine-headless-webkit.git' gem 'guard-jasmine-headless-webkit', :git => 'git://github.com/johnbintz/guard-jasmine-headless-webkit.git'

View File

@ -1,3 +1,5 @@
require 'rainbow'
module Jasmine::Headless::FileChecker module Jasmine::Headless::FileChecker
def excluded_formats def excluded_formats
::Jasmine::Headless::EXCLUDED_FORMATS ::Jasmine::Headless::EXCLUDED_FORMATS

View File

@ -39,6 +39,10 @@ module Jasmine::Headless
@sprockets_environment = nil @sprockets_environment = nil
end end
def sprockets_environment
@sprockets_environment ||= Sprockets::Environment.new
end
def registered_engines def registered_engines
@registered_engines ||= {} @registered_engines ||= {}
end end
@ -138,7 +142,7 @@ module Jasmine::Headless
def sprockets_environment def sprockets_environment
return @sprockets_environment if @sprockets_environment return @sprockets_environment if @sprockets_environment
@sprockets_environment = Sprockets::Environment.new @sprockets_environment = self.class.sprockets_environment #|| Sprockets::Environment.new
search_paths.each { |path| @sprockets_environment.append_path(path) } search_paths.each { |path| @sprockets_environment.append_path(path) }
@sprockets_environment.unregister_postprocessor('application/javascript', Sprockets::SafetyColons) @sprockets_environment.unregister_postprocessor('application/javascript', Sprockets::SafetyColons)
@ -326,6 +330,10 @@ end
module Jasmine::Headless module Jasmine::Headless
extend self extend self
def sprockets_environment
Jasmine::Headless::FilesList.sprockets_environment
end
def register_engine(file_extension, template_class) def register_engine(file_extension, template_class)
Jasmine::Headless::FilesList.register_engine(file_extension, template_class) Jasmine::Headless::FilesList.register_engine(file_extension, template_class)
end end

View File

@ -189,6 +189,20 @@ describe Jasmine::Headless::FilesList do
end end
end end
describe "#sprockets_environment" do
before(:each) do
Jasmine::Headless::FilesList.reset!
end
it "should return shared class-level sprockets environment that will be used when tests are run" do
processor = Object.new
described_class.sprockets_environment.register_postprocessor "application/javascript", processor
described_class.new.sprockets_environment.postprocessors["application/javascript"].should include(processor)
end
end
end end
end end