guard-sprockets2 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. data/.gitignore +7 -0
  2. data/.rspec +1 -0
  3. data/Gemfile +3 -0
  4. data/LICENSE +22 -0
  5. data/README.md +51 -0
  6. data/Rakefile +10 -0
  7. data/examples/rails_app/.gitignore +5 -0
  8. data/examples/rails_app/Gemfile +32 -0
  9. data/examples/rails_app/Guardfile +6 -0
  10. data/examples/rails_app/README +261 -0
  11. data/examples/rails_app/Rakefile +7 -0
  12. data/examples/rails_app/app/assets/images/rails.png +0 -0
  13. data/examples/rails_app/app/assets/javascripts/application.js +1 -0
  14. data/examples/rails_app/app/assets/javascripts/hello.coffee +1 -0
  15. data/examples/rails_app/app/assets/stylesheets/application.css +7 -0
  16. data/examples/rails_app/app/controllers/application_controller.rb +3 -0
  17. data/examples/rails_app/app/helpers/application_helper.rb +2 -0
  18. data/examples/rails_app/app/mailers/.gitkeep +0 -0
  19. data/examples/rails_app/app/models/.gitkeep +0 -0
  20. data/examples/rails_app/app/views/layouts/application.html.erb +14 -0
  21. data/examples/rails_app/config/application.rb +54 -0
  22. data/examples/rails_app/config/boot.rb +6 -0
  23. data/examples/rails_app/config/database.yml +25 -0
  24. data/examples/rails_app/config/environment.rb +5 -0
  25. data/examples/rails_app/config/environments/development.rb +30 -0
  26. data/examples/rails_app/config/environments/production.rb +60 -0
  27. data/examples/rails_app/config/environments/test.rb +42 -0
  28. data/examples/rails_app/config/initializers/backtrace_silencers.rb +7 -0
  29. data/examples/rails_app/config/initializers/inflections.rb +10 -0
  30. data/examples/rails_app/config/initializers/mime_types.rb +5 -0
  31. data/examples/rails_app/config/initializers/secret_token.rb +7 -0
  32. data/examples/rails_app/config/initializers/session_store.rb +8 -0
  33. data/examples/rails_app/config/initializers/wrap_parameters.rb +14 -0
  34. data/examples/rails_app/config/locales/en.yml +5 -0
  35. data/examples/rails_app/config/routes.rb +58 -0
  36. data/examples/rails_app/config.ru +4 -0
  37. data/examples/rails_app/db/seeds.rb +7 -0
  38. data/examples/rails_app/doc/README_FOR_APP +2 -0
  39. data/examples/rails_app/lib/assets/.gitkeep +0 -0
  40. data/examples/rails_app/lib/tasks/.gitkeep +0 -0
  41. data/examples/rails_app/log/.gitkeep +0 -0
  42. data/examples/rails_app/public/404.html +26 -0
  43. data/examples/rails_app/public/422.html +26 -0
  44. data/examples/rails_app/public/500.html +26 -0
  45. data/examples/rails_app/public/favicon.ico +0 -0
  46. data/examples/rails_app/public/index.html +241 -0
  47. data/examples/rails_app/public/robots.txt +5 -0
  48. data/examples/rails_app/script/rails +6 -0
  49. data/examples/rails_app/vendor/assets/stylesheets/.gitkeep +0 -0
  50. data/examples/rails_app/vendor/plugins/.gitkeep +0 -0
  51. data/examples/sinatra_app/Gemfile +13 -0
  52. data/examples/sinatra_app/Guardfile +6 -0
  53. data/examples/sinatra_app/app.rb +37 -0
  54. data/examples/sinatra_app/assets/javascripts/application.js +1 -0
  55. data/examples/sinatra_app/assets/javascripts/hello.coffee +1 -0
  56. data/examples/sinatra_app/config.ru +5 -0
  57. data/examples/sinatra_app/views/index.erb +15 -0
  58. data/features/rails_support.feature +25 -0
  59. data/features/sinatra_support.feature +25 -0
  60. data/features/step_definitions/general_steps.rb +35 -0
  61. data/features/support/env.rb +9 -0
  62. data/guard-sprockets2.gemspec +32 -0
  63. data/lib/guard/sprockets2/templates/Guardfile +11 -0
  64. data/lib/guard/sprockets2/version.rb +5 -0
  65. data/lib/guard/sprockets2.rb +84 -0
  66. data/spec/guard/sprockets2/compiler_spec.rb +64 -0
  67. data/spec/guard/sprockets2_spec.rb +26 -0
  68. data/spec/spec_helper.rb +6 -0
  69. metadata +236 -0
@@ -0,0 +1,25 @@
1
+ Feature: Sinatra Support
2
+
3
+ Background:
4
+ Given I setup the example sinatra app for testing
5
+ And I clean the generated assets
6
+
7
+ Scenario: Compiling assets
8
+ When I run `guard` interactively
9
+ And I wait 3 seconds
10
+ And I stop the process
11
+ Then the output should contain "Compiling assets"
12
+ And the hello asset should be compiled
13
+
14
+ Scenario: Re-compiling assets
15
+ When I run `guard` interactively
16
+ And I wait 3 seconds
17
+ And a file named "assets/javascripts/goodbye.coffee" with:
18
+ """
19
+ console.log 'Goodbye'
20
+ """
21
+ And I wait 3 seconds
22
+ And I stop the process
23
+ Then the output should contain "Compiling assets"
24
+ And the hello asset should be compiled
25
+ And the goodbye asset should be compiled
@@ -0,0 +1,35 @@
1
+ Given /^I setup the example (\w+) app for testing$/ do |app|
2
+ @app = app
3
+ system "cp -r examples/#{app}_app tmp/aruba/#{app}_app"
4
+ And "I cd to \"#{app}_app\""
5
+ end
6
+
7
+ Given /^I clean the generated assets$/ do
8
+ FileUtils.rm_rf "tmp/aruba/#{@app}_app/public/assets"
9
+ end
10
+
11
+ When /^I wait (\d+) seconds$/ do |seconds|
12
+ sleep(seconds.to_i)
13
+ end
14
+
15
+ When /^I stop the process$/ do
16
+ process = processes.first
17
+ pid = process[1].instance_variable_get("@process").pid
18
+ Process.kill("INT", pid)
19
+ end
20
+
21
+ Then /^the hello asset should be compiled$/ do
22
+ files = Dir["tmp/aruba/#{@app}_app/public/assets/*.js"]
23
+ files.count.should eq 1
24
+
25
+ file = files.first
26
+ File.read(file).should include("console.log('Hello')")
27
+ end
28
+
29
+ Then /^the goodbye asset should be compiled$/ do
30
+ files = Dir["tmp/aruba/#{@app}_app/public/assets/*.js"]
31
+ files.count.should eq 1
32
+
33
+ file = files.first
34
+ File.read(file).should include("console.log('Goodbye')")
35
+ end
@@ -0,0 +1,9 @@
1
+ require 'bundler/setup'
2
+ require 'guard/sprockets2'
3
+
4
+ require 'aruba/cucumber'
5
+
6
+ Before do
7
+ system "mkdir -p tmp/aruba"
8
+ @aruba_timeout_seconds = 6
9
+ end
@@ -0,0 +1,32 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "guard/sprockets2/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "guard-sprockets2"
7
+ s.version = Guard::Sprockets2Version::VERSION
8
+ s.authors = ["Steve Hodgkiss"]
9
+ s.email = ["steve@hodgkiss.me.uk"]
10
+ s.homepage = ""
11
+ s.summary = %q{}
12
+ s.description = %q{}
13
+
14
+ s.rubyforge_project = "guard-sprockets2"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
+ s.require_paths = ["lib"]
20
+
21
+ s.add_dependency 'guard'
22
+ s.add_dependency 'sprockets', '~> 2.0'
23
+
24
+ s.add_development_dependency 'rspec'
25
+ s.add_development_dependency 'coffee-script'
26
+ s.add_development_dependency 'uglifier'
27
+ s.add_development_dependency 'sass'
28
+ s.add_development_dependency 'sinatra'
29
+ s.add_development_dependency 'cucumber'
30
+ s.add_development_dependency 'aruba'
31
+ s.add_development_dependency 'rails', '~> 3.1'
32
+ end
@@ -0,0 +1,11 @@
1
+ require './app' # Require your app with sprockets
2
+
3
+ guard 'sprockets2', :sprockets => App.settings.sprockets do
4
+ watch(%r{^assets/.+$})
5
+ watch('app.rb')
6
+ end
7
+
8
+ guard 'sprockets2', :sprockets => Rails.config.assets do
9
+ watch(%r{^app/assets/.+$})
10
+ watch('config/application.rb')
11
+ end
@@ -0,0 +1,5 @@
1
+ module Guard
2
+ module Sprockets2Version
3
+ VERSION = "0.0.1"
4
+ end
5
+ end
@@ -0,0 +1,84 @@
1
+ require 'guard/sprockets2/version'
2
+ require 'guard'
3
+ require 'guard/guard'
4
+ require 'rake'
5
+ require 'sprockets'
6
+
7
+ module Guard
8
+ class Sprockets2 < Guard
9
+ def initialize(watchers = [], options = {})
10
+ super
11
+ @compiler = Compiler.new(options)
12
+ end
13
+
14
+ def start
15
+ compile_assets
16
+ end
17
+
18
+ def run_all
19
+ compile_assets
20
+ end
21
+
22
+ def run_on_change(paths = [])
23
+ compile_assets
24
+ end
25
+
26
+ class Compiler
27
+ def initialize(options = {})
28
+ @sprockets = options[:sprockets]
29
+ @assets_path = options[:assets_path]
30
+ @precompile = options[:precompile]
31
+ if defined?(Rails)
32
+ @sprockets ||= Rails.application.assets
33
+ @assets_path ||= File.join(Rails.public_path, Rails.application.config.assets.prefix)
34
+ @precompile ||= Rails.application.config.assets.precompile
35
+ else
36
+ @assets_path ||= "#{Dir.pwd}/public/assets"
37
+ @precompile ||= [ /\w+\.(?!js|css).+/, /application.(css|js)$/ ]
38
+ end
39
+ end
40
+
41
+ def clean
42
+ FileUtils.rm_rf @assets_path, :secure => true
43
+ end
44
+
45
+ def compile
46
+ target = Pathname.new(@assets_path)
47
+ @precompile.each do |path|
48
+ @sprockets.each_logical_path do |logical_path|
49
+ if path.is_a?(Regexp)
50
+ next unless path.match(logical_path)
51
+ else
52
+ next unless File.fnmatch(path.to_s, logical_path)
53
+ end
54
+
55
+ if asset = @sprockets.find_asset(logical_path)
56
+ filename = target.join(asset.digest_path)
57
+ FileUtils.mkdir_p filename.dirname
58
+ asset.write_to(filename)
59
+ asset.write_to("#{filename}.gz") if filename.to_s =~ /\.(css|js)$/
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
65
+
66
+ protected
67
+
68
+ def compile_assets
69
+ @compiler.clean
70
+ print "Compiling assets... " unless ENV["GUARD_ENV"] == "test"
71
+ time_taken = time do
72
+ @compiler.compile
73
+ end
74
+ UI.info "completed in #{time_taken} seconds"
75
+ end
76
+
77
+ def time(&block)
78
+ start = Time.now
79
+ yield
80
+ finish = Time.now
81
+ finish - start
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,64 @@
1
+ require 'spec_helper'
2
+
3
+ describe Guard::Sprockets2::Compiler do
4
+
5
+ def write_file(path, data)
6
+ File.open(path, "wb") {|f| f.write data }
7
+ end
8
+
9
+ let(:root) { Pathname.new(File.expand_path("../../../tmp", __FILE__)) }
10
+ let(:sprockets) { Sprockets::Environment.new(root.to_s) }
11
+ let(:assets_path) { root.join("assets") }
12
+ let(:compiled_path) { root.join("compiled") }
13
+
14
+ before do
15
+ FileUtils.mkdir_p assets_path
16
+ FileUtils.mkdir_p compiled_path
17
+ sprockets.append_path(assets_path)
18
+ write_file(assets_path.join("application.js").to_s, "//= require_tree .")
19
+ end
20
+
21
+ after { FileUtils.rm_rf root, :secure => true }
22
+
23
+ context 'preconfigured' do
24
+ subject { Guard::Sprockets2::Compiler.new(:sprockets => sprockets, :assets_path => compiled_path.to_s) }
25
+
26
+ it "compiles assets" do
27
+ write_file(assets_path.join("hello.coffee").to_s, "console.log 'hello'")
28
+ subject.compile
29
+ asset = sprockets.find_asset("application.js")
30
+ app_js_path = compiled_path.join(asset.digest_path)
31
+
32
+ app_js_path.should exist
33
+ app_js = app_js_path.read
34
+ app_js.should include("console.log('hello')")
35
+ end
36
+
37
+ end
38
+
39
+ context 'with rails loaded' do
40
+ before do
41
+ write_file(assets_path.join("hello.coffee").to_s, "console.log 'hello2'")
42
+ module Rails
43
+ end
44
+ Rails.stub(:public_path => root)
45
+ Rails.stub_chain(:application, :assets).and_return(sprockets)
46
+ Rails.stub_chain(:application, :config, :assets, :prefix).and_return('compiled')
47
+ Rails.stub_chain(:application, :config, :assets, :precompile).and_return([ /\w+\.(?!js|css).+/, /application.(css|js)$/ ])
48
+ subject.compile
49
+ end
50
+
51
+ subject { Guard::Sprockets2::Compiler.new }
52
+
53
+ it "compiles assets" do
54
+ asset = sprockets.find_asset("application.js")
55
+ app_js_path = compiled_path.join(asset.digest_path)
56
+
57
+ app_js_path.should exist
58
+ app_js = app_js_path.read
59
+ app_js.should include("console.log('hello2')")
60
+ end
61
+
62
+ after { Object.send(:remove_const, :Rails) }
63
+ end
64
+ end
@@ -0,0 +1,26 @@
1
+ require 'spec_helper'
2
+
3
+ describe Guard::Sprockets2 do
4
+
5
+ before do
6
+ @options = {:option => true}
7
+ @compiler = mock(:clean => true, :compile => true)
8
+ Guard::Sprockets2::Compiler.stub(:new => @compiler)
9
+ @guard = described_class.new(['watchers'], @options)
10
+ end
11
+
12
+ %w[ start run_all run_on_change ].each do |method|
13
+ describe "##{method}" do
14
+ it "cleans" do
15
+ @compiler.should_receive(:clean)
16
+ @guard.send(method)
17
+ end
18
+
19
+ it "compiles" do
20
+ @compiler.should_receive(:compile)
21
+ @guard.send(method)
22
+ end
23
+ end
24
+ end
25
+
26
+ end
@@ -0,0 +1,6 @@
1
+ require 'bundler/setup'
2
+ require 'rspec'
3
+ require 'guard/sprockets2'
4
+
5
+ require 'pathname'
6
+ ENV["GUARD_ENV"] = "test"
metadata ADDED
@@ -0,0 +1,236 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: guard-sprockets2
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Steve Hodgkiss
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-09-05 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: guard
16
+ requirement: &70330975101420 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70330975101420
25
+ - !ruby/object:Gem::Dependency
26
+ name: sprockets
27
+ requirement: &70330975100060 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: '2.0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *70330975100060
36
+ - !ruby/object:Gem::Dependency
37
+ name: rspec
38
+ requirement: &70330975092820 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *70330975092820
47
+ - !ruby/object:Gem::Dependency
48
+ name: coffee-script
49
+ requirement: &70330975091760 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *70330975091760
58
+ - !ruby/object:Gem::Dependency
59
+ name: uglifier
60
+ requirement: &70330975091040 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *70330975091040
69
+ - !ruby/object:Gem::Dependency
70
+ name: sass
71
+ requirement: &70330975090260 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: *70330975090260
80
+ - !ruby/object:Gem::Dependency
81
+ name: sinatra
82
+ requirement: &70330975089460 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *70330975089460
91
+ - !ruby/object:Gem::Dependency
92
+ name: cucumber
93
+ requirement: &70330975088760 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
99
+ type: :development
100
+ prerelease: false
101
+ version_requirements: *70330975088760
102
+ - !ruby/object:Gem::Dependency
103
+ name: aruba
104
+ requirement: &70330975087520 !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: *70330975087520
113
+ - !ruby/object:Gem::Dependency
114
+ name: rails
115
+ requirement: &70330975085940 !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ~>
119
+ - !ruby/object:Gem::Version
120
+ version: '3.1'
121
+ type: :development
122
+ prerelease: false
123
+ version_requirements: *70330975085940
124
+ description: ''
125
+ email:
126
+ - steve@hodgkiss.me.uk
127
+ executables: []
128
+ extensions: []
129
+ extra_rdoc_files: []
130
+ files:
131
+ - .gitignore
132
+ - .rspec
133
+ - Gemfile
134
+ - LICENSE
135
+ - README.md
136
+ - Rakefile
137
+ - examples/rails_app/.gitignore
138
+ - examples/rails_app/Gemfile
139
+ - examples/rails_app/Guardfile
140
+ - examples/rails_app/README
141
+ - examples/rails_app/Rakefile
142
+ - examples/rails_app/app/assets/images/rails.png
143
+ - examples/rails_app/app/assets/javascripts/application.js
144
+ - examples/rails_app/app/assets/javascripts/hello.coffee
145
+ - examples/rails_app/app/assets/stylesheets/application.css
146
+ - examples/rails_app/app/controllers/application_controller.rb
147
+ - examples/rails_app/app/helpers/application_helper.rb
148
+ - examples/rails_app/app/mailers/.gitkeep
149
+ - examples/rails_app/app/models/.gitkeep
150
+ - examples/rails_app/app/views/layouts/application.html.erb
151
+ - examples/rails_app/config.ru
152
+ - examples/rails_app/config/application.rb
153
+ - examples/rails_app/config/boot.rb
154
+ - examples/rails_app/config/database.yml
155
+ - examples/rails_app/config/environment.rb
156
+ - examples/rails_app/config/environments/development.rb
157
+ - examples/rails_app/config/environments/production.rb
158
+ - examples/rails_app/config/environments/test.rb
159
+ - examples/rails_app/config/initializers/backtrace_silencers.rb
160
+ - examples/rails_app/config/initializers/inflections.rb
161
+ - examples/rails_app/config/initializers/mime_types.rb
162
+ - examples/rails_app/config/initializers/secret_token.rb
163
+ - examples/rails_app/config/initializers/session_store.rb
164
+ - examples/rails_app/config/initializers/wrap_parameters.rb
165
+ - examples/rails_app/config/locales/en.yml
166
+ - examples/rails_app/config/routes.rb
167
+ - examples/rails_app/db/seeds.rb
168
+ - examples/rails_app/doc/README_FOR_APP
169
+ - examples/rails_app/lib/assets/.gitkeep
170
+ - examples/rails_app/lib/tasks/.gitkeep
171
+ - examples/rails_app/log/.gitkeep
172
+ - examples/rails_app/public/404.html
173
+ - examples/rails_app/public/422.html
174
+ - examples/rails_app/public/500.html
175
+ - examples/rails_app/public/favicon.ico
176
+ - examples/rails_app/public/index.html
177
+ - examples/rails_app/public/robots.txt
178
+ - examples/rails_app/script/rails
179
+ - examples/rails_app/vendor/assets/stylesheets/.gitkeep
180
+ - examples/rails_app/vendor/plugins/.gitkeep
181
+ - examples/sinatra_app/Gemfile
182
+ - examples/sinatra_app/Guardfile
183
+ - examples/sinatra_app/app.rb
184
+ - examples/sinatra_app/assets/javascripts/application.js
185
+ - examples/sinatra_app/assets/javascripts/hello.coffee
186
+ - examples/sinatra_app/config.ru
187
+ - examples/sinatra_app/views/index.erb
188
+ - features/rails_support.feature
189
+ - features/sinatra_support.feature
190
+ - features/step_definitions/general_steps.rb
191
+ - features/support/env.rb
192
+ - guard-sprockets2.gemspec
193
+ - lib/guard/sprockets2.rb
194
+ - lib/guard/sprockets2/templates/Guardfile
195
+ - lib/guard/sprockets2/version.rb
196
+ - spec/guard/sprockets2/compiler_spec.rb
197
+ - spec/guard/sprockets2_spec.rb
198
+ - spec/spec_helper.rb
199
+ homepage: ''
200
+ licenses: []
201
+ post_install_message:
202
+ rdoc_options: []
203
+ require_paths:
204
+ - lib
205
+ required_ruby_version: !ruby/object:Gem::Requirement
206
+ none: false
207
+ requirements:
208
+ - - ! '>='
209
+ - !ruby/object:Gem::Version
210
+ version: '0'
211
+ segments:
212
+ - 0
213
+ hash: -3398072810507629991
214
+ required_rubygems_version: !ruby/object:Gem::Requirement
215
+ none: false
216
+ requirements:
217
+ - - ! '>='
218
+ - !ruby/object:Gem::Version
219
+ version: '0'
220
+ segments:
221
+ - 0
222
+ hash: -3398072810507629991
223
+ requirements: []
224
+ rubyforge_project: guard-sprockets2
225
+ rubygems_version: 1.8.6
226
+ signing_key:
227
+ specification_version: 3
228
+ summary: ''
229
+ test_files:
230
+ - features/rails_support.feature
231
+ - features/sinatra_support.feature
232
+ - features/step_definitions/general_steps.rb
233
+ - features/support/env.rb
234
+ - spec/guard/sprockets2/compiler_spec.rb
235
+ - spec/guard/sprockets2_spec.rb
236
+ - spec/spec_helper.rb