spec/guard/sprockets2/compiler_spec.rb in guard-sprockets2-0.0.2 vs spec/guard/sprockets2/compiler_spec.rb in guard-sprockets2-0.0.3
- old
+ new
@@ -4,23 +4,23 @@
def write_file(path, data)
File.open(path, "wb") {|f| f.write data }
end
- let(:root) { Pathname.new(File.expand_path("../../../tmp", __FILE__)) }
- let(:sprockets) { Sprockets::Environment.new(root.to_s) }
- let(:assets_path) { root.join("assets") }
- let(:compiled_path) { root.join("compiled") }
+ let(:tmp) { Pathname.new(File.expand_path("../../../../tmp", __FILE__)) }
+ let(:sprockets) { Sprockets::Environment.new(tmp.to_s) }
+ let(:assets_path) { tmp.join("assets") }
+ let(:compiled_path) { tmp.join("compiled") }
before do
+ FileUtils.rm_rf tmp, :secure => true
FileUtils.mkdir_p assets_path
FileUtils.mkdir_p compiled_path
sprockets.append_path(assets_path)
write_file(assets_path.join("application.js").to_s, "//= require_tree .")
end
- after { FileUtils.rm_rf root, :secure => true }
context 'preconfigured' do
subject { Guard::Sprockets2::Compiler.new(:sprockets => sprockets, :assets_path => compiled_path.to_s) }
it "compiles assets" do
@@ -28,22 +28,33 @@
subject.compile
asset = sprockets.find_asset("application.js")
app_js_path = compiled_path.join(asset.digest_path)
app_js_path.should exist
- app_js = app_js_path.read
- app_js.should include("console.log('hello')")
+ app_js_path.read.should include("console.log('hello')")
end
+ end
+ context 'with digest false' do
+ subject { Guard::Sprockets2::Compiler.new(:sprockets => sprockets, :assets_path => compiled_path.to_s, :digest => false) }
+
+ it "compiles assets without the digest" do
+ write_file(assets_path.join("hello.coffee").to_s, "console.log 'hello'")
+ subject.compile
+ app_js_path = compiled_path.join('application.js')
+
+ app_js_path.should exist
+ app_js_path.read.should include("console.log('hello')")
+ end
end
context 'with rails loaded' do
before do
write_file(assets_path.join("hello.coffee").to_s, "console.log 'hello2'")
module Rails
end
- Rails.stub(:public_path => root)
+ Rails.stub(:public_path => tmp)
Rails.stub_chain(:application, :assets).and_return(sprockets)
Rails.stub_chain(:application, :config, :assets, :prefix).and_return('compiled')
Rails.stub_chain(:application, :config, :assets, :precompile).and_return([ /\w+\.(?!js|css).+/, /application.(css|js)$/ ])
subject.compile
end
@@ -53,11 +64,10 @@
it "compiles assets" do
asset = sprockets.find_asset("application.js")
app_js_path = compiled_path.join(asset.digest_path)
app_js_path.should exist
- app_js = app_js_path.read
- app_js.should include("console.log('hello2')")
+ app_js_path.read.should include("console.log('hello2')")
end
after { Object.send(:remove_const, :Rails) }
end
end
\ No newline at end of file