Skip to content

Commit 3f36dd2

Browse files
committed
Merge pull request #36 from bolandrm/allow_no_compression_in_test_mode
Allow no compression in test mode
2 parents 89fc14c + 30fc8df commit 3f36dd2

File tree

3 files changed

+20
-13
lines changed

3 files changed

+20
-13
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,8 @@ for a workaround.
8282

8383
- **1.1.0** (unreleased)
8484
- [Source line comments](https://github.com/bolandrm/sassc-rails/pull/24) (`app.config.sass.line_comments`)
85+
- [Prevent sass-rails railtie from running](https://github.com/bolandrm/sassc-rails/pull/34)
86+
- [CSS compression may be disabled in test mode](https://github.com/bolandrm/sassc-rails/issues/33). Special thanks to [this Sass-Rails PR](https://github.com/rails/sass-rails/pull/338) for inspiration.
8587
- **1.0.0**
8688
- Initial Release
8789
- Add support for inline source maps

lib/sassc/rails/railtie.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@ class Railtie < ::Rails::Railtie
5656
end
5757

5858
initializer :setup_compression, group: :all do |app|
59-
unless Rails.env.development?
60-
app.config.assets.css_compressor ||= :sass
59+
if !Rails.env.development?
60+
app.config.assets.css_compressor = :sass unless app.config.assets.has_key?(:css_compressor)
6161
else
6262
# Use expanded output instead of the sass default of :nested unless specified
6363
app.config.sass.style ||= :expanded

test/sassc_rails_test.rb

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,17 @@ def setup
1313
@app.config.log_level = :debug
1414

1515
# reset config back to default
16-
@app.config.assets.css_compressor = nil
16+
@app.config.assets.delete(:css_compressor)
1717
@app.config.sass = ActiveSupport::OrderedOptions.new
1818
@app.config.sass.preferred_syntax = :scss
1919
@app.config.sass.load_paths = []
2020

2121
# Not actually a default, but it makes assertions more complicated
2222
@app.config.sass.line_comments = false
2323

24+
# Add a fake compressor for testing purposes
25+
@app.assets.register_compressor "text/css", :test, TestCompressor
26+
2427
Rails.backtrace_cleaner.remove_silencers!
2528
end
2629

@@ -186,24 +189,24 @@ def test_special_characters_compile
186189
css_output = render_asset("special_characters.scss")
187190
end
188191

189-
def css_compressor_config_item_is_not_honored_in_development_mode
190-
@app.config.assets.css_compressor = :test
191-
initialize_dev!
192-
assert_equal nil, Rails.application.config.assets.css_compressor
193-
end
194-
195-
def css_compressor_config_item_is_honored_if_not_development_mode
192+
def test_css_compressor_config_item_is_honored_if_not_development_mode
196193
@app.config.assets.css_compressor = :test
197194
initialize_prod!
198195
assert_equal :test, Rails.application.config.assets.css_compressor
199196
end
200197

201-
def css_compressor_is_defined_in_test_mode
202-
initialize_test!
198+
def test_css_compressor_config_item_may_be_nil_in_test_mode
199+
@app.config.assets.css_compressor = nil
200+
initialize!
201+
assert_equal nil, Rails.application.config.assets.css_compressor
202+
end
203+
204+
def test_css_compressor_is_defined_in_test_mode
205+
initialize!
203206
assert_equal :sass, Rails.application.config.assets.css_compressor
204207
end
205208

206-
def css_compressor_is_defined_in_prod_mode
209+
def test_css_compressor_is_defined_in_prod_mode
207210
initialize_prod!
208211
assert_equal :sass, Rails.application.config.assets.css_compressor
209212
end
@@ -318,4 +321,6 @@ def test_globbed_imports_work_when_globbed_file_is_added
318321
File.delete(new_file)
319322
end
320323
end
324+
325+
class TestCompressor; end
321326
end

0 commit comments

Comments
 (0)