testing alternative (passthrough) compressor works inline, but not through Sprockets
This commit is contained in:
parent
911fe031bd
commit
f4436eb49e
12 changed files with 94 additions and 3 deletions
|
@ -22,3 +22,8 @@ Feature: Minify CSS
|
||||||
And the Server is running at "test-app"
|
And the Server is running at "test-app"
|
||||||
When I go to "/stylesheets/site.css"
|
When I go to "/stylesheets/site.css"
|
||||||
Then I should see "1" lines
|
Then I should see "1" lines
|
||||||
|
|
||||||
|
Scenario: Rendering external css with passthrough compressor
|
||||||
|
Given the Server is running at "passthrough-app"
|
||||||
|
When I go to "/stylesheets/site.css"
|
||||||
|
Then I should see "41" lines
|
|
@ -10,14 +10,46 @@ Feature: Minify Javascript
|
||||||
When I go to "/inline-js.html"
|
When I go to "/inline-js.html"
|
||||||
Then I should see "10" lines
|
Then I should see "10" lines
|
||||||
|
|
||||||
|
Scenario: Rendering inline js with a passthrough minifier
|
||||||
|
Given the Server is running at "passthrough-app"
|
||||||
|
When I go to "/inline-js.html"
|
||||||
|
Then I should see "11" lines
|
||||||
|
|
||||||
Scenario: Rendering inline js with the feature enabled
|
Scenario: Rendering inline js with the feature enabled
|
||||||
Given "minify_javascript" feature is "enabled"
|
Given "minify_javascript" feature is "enabled"
|
||||||
And the Server is running at "test-app"
|
And the Server is running at "test-app"
|
||||||
When I go to "/inline-js.html"
|
When I go to "/inline-js.html"
|
||||||
Then I should see "5" lines
|
Then I should see "5" lines
|
||||||
|
|
||||||
|
Scenario: Rendering external js with the feature enabled
|
||||||
|
Given "minify_javascript" feature is "enabled"
|
||||||
|
And the Server is running at "test-app"
|
||||||
|
When I go to "/javascripts/js_test.js"
|
||||||
|
Then I should see "1" lines
|
||||||
|
|
||||||
|
Scenario: Rendering external js with a passthrough minifier
|
||||||
|
And the Server is running at "passthrough-app"
|
||||||
|
When I go to "/javascripts/js_test.js"
|
||||||
|
Then I should see "5" lines
|
||||||
|
|
||||||
Scenario: Rendering inline js (coffeescript) with the feature enabled
|
Scenario: Rendering inline js (coffeescript) with the feature enabled
|
||||||
Given "minify_javascript" feature is "enabled"
|
Given "minify_javascript" feature is "enabled"
|
||||||
And the Server is running at "test-app"
|
And the Server is running at "test-app"
|
||||||
When I go to "/inline-coffeescript.html"
|
When I go to "/inline-coffeescript.html"
|
||||||
Then I should see "5" lines
|
Then I should see "5" lines
|
||||||
|
|
||||||
|
Scenario: Rendering external js (coffeescript) with the feature enabled
|
||||||
|
Given "minify_javascript" feature is "enabled"
|
||||||
|
And the Server is running at "test-app"
|
||||||
|
When I go to "/javascripts/coffee_test.js"
|
||||||
|
Then I should see "1" lines
|
||||||
|
|
||||||
|
Scenario: Rendering inline js (coffeescript) with a passthrough minifier
|
||||||
|
Given the Server is running at "passthrough-app"
|
||||||
|
When I go to "/inline-coffeescript.html"
|
||||||
|
Then I should see "17" lines
|
||||||
|
|
||||||
|
Scenario: Rendering external js (coffeescript) with a passthrough minifier
|
||||||
|
And the Server is running at "passthrough-app"
|
||||||
|
When I go to "/javascripts/coffee_test.js"
|
||||||
|
Then I should see "5" lines
|
17
fixtures/passthrough-app/config.rb
Normal file
17
fixtures/passthrough-app/config.rb
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
module PassThrough
|
||||||
|
def self.compile(data)
|
||||||
|
data
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
set :js_compressor, PassThrough
|
||||||
|
set :css_compressor, PassThrough
|
||||||
|
|
||||||
|
activate :minify_javascript
|
||||||
|
activate :minify_css
|
||||||
|
|
||||||
|
with_layout false do
|
||||||
|
page "/inline-css.html"
|
||||||
|
page "/inline-js.html"
|
||||||
|
page "/inline-coffeescript.html"
|
||||||
|
end
|
1
fixtures/passthrough-app/source/.htaccess
Normal file
1
fixtures/passthrough-app/source/.htaccess
Normal file
|
@ -0,0 +1 @@
|
||||||
|
# I'm an htaccess file!
|
|
@ -0,0 +1,3 @@
|
||||||
|
:coffeescript
|
||||||
|
race = (winner, runners...) ->
|
||||||
|
print winner, runners
|
4
fixtures/passthrough-app/source/inline-css.html.haml
Executable file
4
fixtures/passthrough-app/source/inline-css.html.haml
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
:sass
|
||||||
|
body
|
||||||
|
test: style
|
||||||
|
good: deal
|
7
fixtures/passthrough-app/source/inline-js.html.haml
Executable file
7
fixtures/passthrough-app/source/inline-js.html.haml
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
:javascript
|
||||||
|
;(function() {
|
||||||
|
this;
|
||||||
|
should();
|
||||||
|
all.be();
|
||||||
|
on = { one: line };
|
||||||
|
})();
|
|
@ -0,0 +1,3 @@
|
||||||
|
# Splats:
|
||||||
|
race = (winner, runners...) ->
|
||||||
|
print winner, runners
|
8
fixtures/passthrough-app/source/javascripts/js_test.js
Normal file
8
fixtures/passthrough-app/source/javascripts/js_test.js
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
var race;
|
||||||
|
var __slice = Array.prototype.slice;
|
||||||
|
|
||||||
|
race = function() {
|
||||||
|
var runners, winner;
|
||||||
|
winner = arguments[0], runners = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
|
||||||
|
return print(winner, runners);
|
||||||
|
};
|
1
fixtures/passthrough-app/source/stylesheets/site.css.sass
Executable file
1
fixtures/passthrough-app/source/stylesheets/site.css.sass
Executable file
|
@ -0,0 +1 @@
|
||||||
|
@import "compass/reset"
|
8
fixtures/test-app/source/javascripts/js_test.js
Normal file
8
fixtures/test-app/source/javascripts/js_test.js
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
var race;
|
||||||
|
var __slice = Array.prototype.slice;
|
||||||
|
|
||||||
|
race = function() {
|
||||||
|
var runners, winner;
|
||||||
|
winner = arguments[0], runners = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
|
||||||
|
return print(winner, runners);
|
||||||
|
};
|
|
@ -2,11 +2,13 @@ module Middleman::Extensions
|
||||||
module MinifyCss
|
module MinifyCss
|
||||||
class << self
|
class << self
|
||||||
def registered(app)
|
def registered(app)
|
||||||
require "middleman/extensions/minify_css/cssmin"
|
|
||||||
app.after_configuration do
|
app.after_configuration do
|
||||||
|
if !css_compressor
|
||||||
|
require "middleman/extensions/minify_css/cssmin"
|
||||||
set :css_compressor, ::CSSMin
|
set :css_compressor, ::CSSMin
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
end
|
||||||
alias :included :registered
|
alias :included :registered
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Reference in a new issue