Skip to content

Allow no compression in test mode #36

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jul 25, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,8 @@ for a workaround.

- **1.1.0** (unreleased)
- [Source line comments](https://github.com/bolandrm/sassc-rails/pull/24) (`app.config.sass.line_comments`)
- [Prevent sass-rails railtie from running](https://github.com/bolandrm/sassc-rails/pull/34)
- [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.
- **1.0.0**
- Initial Release
- Add support for inline source maps
Expand Down
4 changes: 2 additions & 2 deletions lib/sassc/rails/railtie.rb
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,8 @@ class Railtie < ::Rails::Railtie
end

initializer :setup_compression, group: :all do |app|
unless Rails.env.development?
app.config.assets.css_compressor ||= :sass
if !Rails.env.development?
app.config.assets.css_compressor = :sass unless app.config.assets.has_key?(:css_compressor)
else
# Use expanded output instead of the sass default of :nested unless specified
app.config.sass.style ||= :expanded
Expand Down
27 changes: 16 additions & 11 deletions test/sassc_rails_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,17 @@ def setup
@app.config.log_level = :debug

# reset config back to default
@app.config.assets.css_compressor = nil
@app.config.assets.delete(:css_compressor)
@app.config.sass = ActiveSupport::OrderedOptions.new
@app.config.sass.preferred_syntax = :scss
@app.config.sass.load_paths = []

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

# Add a fake compressor for testing purposes
@app.assets.register_compressor "text/css", :test, TestCompressor

Rails.backtrace_cleaner.remove_silencers!
end

Expand Down Expand Up @@ -186,24 +189,24 @@ def test_special_characters_compile
css_output = render_asset("special_characters.scss")
end

def css_compressor_config_item_is_not_honored_in_development_mode
@app.config.assets.css_compressor = :test
initialize_dev!
assert_equal nil, Rails.application.config.assets.css_compressor
end

def css_compressor_config_item_is_honored_if_not_development_mode
def test_css_compressor_config_item_is_honored_if_not_development_mode
@app.config.assets.css_compressor = :test
initialize_prod!
assert_equal :test, Rails.application.config.assets.css_compressor
end

def css_compressor_is_defined_in_test_mode
initialize_test!
def test_css_compressor_config_item_may_be_nil_in_test_mode
@app.config.assets.css_compressor = nil
initialize!
assert_equal nil, Rails.application.config.assets.css_compressor
end

def test_css_compressor_is_defined_in_test_mode
initialize!
assert_equal :sass, Rails.application.config.assets.css_compressor
end

def css_compressor_is_defined_in_prod_mode
def test_css_compressor_is_defined_in_prod_mode
initialize_prod!
assert_equal :sass, Rails.application.config.assets.css_compressor
end
Expand Down Expand Up @@ -318,4 +321,6 @@ def test_globbed_imports_work_when_globbed_file_is_added
File.delete(new_file)
end
end

class TestCompressor; end
end