sinatra-assetpack 0.0.8 → 0.0.9

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 (54) hide show
  1. data/.gitignore +1 -0
  2. data/HISTORY.md +15 -0
  3. data/README.md +203 -112
  4. data/Rakefile +17 -0
  5. data/docsrc/style.css +32 -0
  6. data/{example → examples/basic}/.gitignore +0 -0
  7. data/{example → examples/basic}/Rakefile +0 -0
  8. data/{example → examples/basic}/app.rb +0 -0
  9. data/{example → examples/basic}/app/css/test.sass +0 -0
  10. data/{example → examples/basic}/app/images/icon.png +0 -0
  11. data/{example → examples/basic}/app/js/app.js +0 -0
  12. data/{example → examples/basic}/app/js/vendor/jquery.js +0 -0
  13. data/{example → examples/basic}/app/js/vendor/jquery.plugin.js +0 -0
  14. data/{example → examples/basic}/app/js/vendor/underscore.js +0 -0
  15. data/{example → examples/basic}/views/index.erb +0 -0
  16. data/examples/compass/.gitignore +1 -0
  17. data/examples/compass/Rakefile +7 -0
  18. data/examples/compass/app.rb +45 -0
  19. data/examples/compass/app/css/main.scss +64 -0
  20. data/examples/compass/app/images/icon-scfd8d7d404.png +0 -0
  21. data/examples/compass/app/images/icon/mail.png +0 -0
  22. data/examples/compass/app/images/icon/refresh.png +0 -0
  23. data/examples/compass/app/images/junk/mail.png +0 -0
  24. data/examples/compass/app/images/junk/refresh.png +0 -0
  25. data/examples/compass/app/js/app.js +3 -0
  26. data/examples/compass/app/js/vendor/jquery.js +2 -0
  27. data/examples/compass/app/js/vendor/jquery.plugin.js +2 -0
  28. data/examples/compass/app/js/vendor/underscore.js +2 -0
  29. data/examples/compass/config.ru +3 -0
  30. data/examples/compass/views/index.erb +15 -0
  31. data/lib/sinatra/assetpack.rb +1 -1
  32. data/lib/sinatra/assetpack/class_methods.rb +13 -7
  33. data/lib/sinatra/assetpack/options.rb +0 -8
  34. data/lib/sinatra/assetpack/package.rb +1 -1
  35. data/lib/sinatra/assetpack/rake.rb +7 -1
  36. data/lib/sinatra/assetpack/version.rb +1 -1
  37. data/test/app/app.rb +4 -0
  38. data/test/app/app/css/behavior.htc +1 -0
  39. data/test/app/app/js_glob/a/b/c1/hello.js +1 -0
  40. data/test/app/app/js_glob/a/b/c2/hi.js +1 -0
  41. data/test/app/app/js_glob/a/b/c2/hola.js +1 -0
  42. data/test/cache_test.rb +3 -4
  43. data/test/compressed_test.rb +30 -0
  44. data/test/glob_test.rb +42 -0
  45. data/test/local_file_test.rb +1 -2
  46. data/test/mime_type_test.rb +33 -0
  47. data/test/non_existent_test.rb +1 -2
  48. data/test/options_test.rb +1 -2
  49. data/test/order_test.rb +1 -2
  50. data/test/stylus_test.rb +1 -2
  51. data/test/template_cache_test.rb +29 -0
  52. data/test/test_helper.rb +6 -7
  53. data/test/yui_test.rb +1 -1
  54. metadata +59 -37
@@ -1,8 +1,7 @@
1
1
  require File.expand_path('../test_helper', __FILE__)
2
2
 
3
3
  class LocalFileTest < UnitTest
4
- class App < Sinatra::Base
5
- set :root, File.expand_path('../app', __FILE__)
4
+ class App < UnitTest::App
6
5
  register Sinatra::AssetPack
7
6
 
8
7
  assets {
@@ -0,0 +1,33 @@
1
+ require File.expand_path('../test_helper', __FILE__)
2
+
3
+ class AppTest < UnitTest
4
+ test 'htc' do
5
+ get '/css/behavior.htc'
6
+ assert last_response.content_type =~ %r[^text/x-component]
7
+ end
8
+
9
+ test 'css - sass' do
10
+ get '/css/screen.css'
11
+ assert last_response.content_type =~ %r[^text/css]
12
+ end
13
+
14
+ test 'js' do
15
+ get '/js/hello.js'
16
+ assert last_response.content_type =~ %r[^.*?/javascript]
17
+ end
18
+
19
+ test 'js - coffee' do
20
+ get '/js/hi.js'
21
+ assert last_response.content_type =~ %r[^.*?/javascript]
22
+ end
23
+
24
+ test 'css - compressed' do
25
+ get '/css/application.css'
26
+ assert last_response.content_type =~ %r[^text/css]
27
+ end
28
+
29
+ test 'js - compressed' do
30
+ get '/skitch.js'
31
+ assert last_response.content_type =~ %r[^.*?/javascript]
32
+ end
33
+ end
@@ -1,8 +1,7 @@
1
1
  require File.expand_path('../test_helper', __FILE__)
2
2
 
3
3
  class NonExistentTest < UnitTest
4
- class App < Sinatra::Base
5
- set :root, File.expand_path('../app', __FILE__)
4
+ class App < UnitTest::App
6
5
  register Sinatra::AssetPack
7
6
 
8
7
  assets do |a|
@@ -1,8 +1,7 @@
1
1
  require File.expand_path('../test_helper', __FILE__)
2
2
 
3
3
  class OptionsTest < UnitTest
4
- class App < Sinatra::Base
5
- set :root, File.expand_path('../app', __FILE__)
4
+ class App < UnitTest::App
6
5
  register Sinatra::AssetPack
7
6
 
8
7
  assets {
@@ -1,8 +1,7 @@
1
1
  require File.expand_path('../test_helper', __FILE__)
2
2
 
3
3
  class OrderTest < UnitTest
4
- class App < Sinatra::Base
5
- set :root, File.expand_path('../app', __FILE__)
4
+ class App < UnitTest::App
6
5
  register Sinatra::AssetPack
7
6
 
8
7
  assets {
@@ -1,8 +1,7 @@
1
1
  require File.expand_path('../test_helper', __FILE__)
2
2
 
3
3
  class StylusTest < UnitTest
4
- class App < Sinatra::Base
5
- set :root, File.expand_path('../app', __FILE__)
4
+ class App < UnitTest::App
6
5
  register Sinatra::AssetPack
7
6
 
8
7
  assets do |a|
@@ -0,0 +1,29 @@
1
+ require File.expand_path('../test_helper', __FILE__)
2
+
3
+ class TemplateCacheTest < UnitTest
4
+ class App < UnitTest::App
5
+ register Sinatra::AssetPack
6
+
7
+ set :reload_templates, false
8
+ assets do |a|
9
+ a.css :a, '/a.css', %w[/css/screen.css]
10
+ end
11
+ end
12
+
13
+ def app() App; end
14
+
15
+ test "cache dynamic files when reload templates is false" do
16
+ App.any_instance.expects(:asset_filter_css).times(1).returns "OK"
17
+ 10.times { get '/css/screen.css' }
18
+ end
19
+
20
+ test "cache static css files when reload templates is false" do
21
+ App.any_instance.expects(:asset_filter_css).times(1).returns "OK"
22
+ 10.times { get '/css/style.css' }
23
+ end
24
+
25
+ test "cache packages when reload templates is false" do
26
+ Sinatra::AssetPack::Package.any_instance.expects(:minify).times(1).returns "OK"
27
+ 10.times { get '/a.css' }
28
+ end
29
+ end
@@ -11,6 +11,12 @@ require File.expand_path('../app/app.rb', __FILE__)
11
11
  class UnitTest < Test::Unit::TestCase
12
12
  include Rack::Test::Methods
13
13
 
14
+ class App < Sinatra::Base
15
+ set :root, File.expand_path('../app', __FILE__)
16
+ enable :raise_errors
17
+ disable :show_exceptions
18
+ end
19
+
14
20
  def app
15
21
  Main
16
22
  end
@@ -25,13 +31,6 @@ class UnitTest < Test::Unit::TestCase
25
31
  puts ""
26
32
  end
27
33
 
28
- def get(*a)
29
- super *a
30
- has_error = body.include?('sinatra.error')
31
- d if has_error
32
- assert ! has_error, "Found a Sinatra error."
33
- end
34
-
35
34
  def body
36
35
  last_response.body.strip
37
36
  end
@@ -2,7 +2,7 @@ require File.expand_path('../test_helper', __FILE__)
2
2
 
3
3
  class YuiTest < UnitTest
4
4
  setup do
5
- app.assets.reset_cache
5
+ app.set :reload_templates, true
6
6
  app.assets.js_compression = :yui
7
7
  app.assets.css_compression = :yui
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sinatra-assetpack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-09-06 00:00:00.000000000 +08:00
13
- default_executable:
12
+ date: 2011-09-17 00:00:00.000000000Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: tilt
17
- requirement: &2164770720 !ruby/object:Gem::Requirement
16
+ requirement: &2156684180 !ruby/object:Gem::Requirement
18
17
  none: false
19
18
  requirements:
20
19
  - - ! '>='
@@ -22,10 +21,10 @@ dependencies:
22
21
  version: 1.3.0
23
22
  type: :runtime
24
23
  prerelease: false
25
- version_requirements: *2164770720
24
+ version_requirements: *2156684180
26
25
  - !ruby/object:Gem::Dependency
27
26
  name: sinatra
28
- requirement: &2164770260 !ruby/object:Gem::Requirement
27
+ requirement: &2156683760 !ruby/object:Gem::Requirement
29
28
  none: false
30
29
  requirements:
31
30
  - - ! '>='
@@ -33,10 +32,10 @@ dependencies:
33
32
  version: '0'
34
33
  type: :runtime
35
34
  prerelease: false
36
- version_requirements: *2164770260
35
+ version_requirements: *2156683760
37
36
  - !ruby/object:Gem::Dependency
38
37
  name: jsmin
39
- requirement: &2164769760 !ruby/object:Gem::Requirement
38
+ requirement: &2156683300 !ruby/object:Gem::Requirement
40
39
  none: false
41
40
  requirements:
42
41
  - - ! '>='
@@ -44,10 +43,10 @@ dependencies:
44
43
  version: '0'
45
44
  type: :runtime
46
45
  prerelease: false
47
- version_requirements: *2164769760
46
+ version_requirements: *2156683300
48
47
  - !ruby/object:Gem::Dependency
49
48
  name: rack-test
50
- requirement: &2164769320 !ruby/object:Gem::Requirement
49
+ requirement: &2156682880 !ruby/object:Gem::Requirement
51
50
  none: false
52
51
  requirements:
53
52
  - - ! '>='
@@ -55,10 +54,10 @@ dependencies:
55
54
  version: '0'
56
55
  type: :runtime
57
56
  prerelease: false
58
- version_requirements: *2164769320
57
+ version_requirements: *2156682880
59
58
  - !ruby/object:Gem::Dependency
60
59
  name: yui-compressor
61
- requirement: &2164768860 !ruby/object:Gem::Requirement
60
+ requirement: &2156682460 !ruby/object:Gem::Requirement
62
61
  none: false
63
62
  requirements:
64
63
  - - ! '>='
@@ -66,10 +65,10 @@ dependencies:
66
65
  version: '0'
67
66
  type: :development
68
67
  prerelease: false
69
- version_requirements: *2164768860
68
+ version_requirements: *2156682460
70
69
  - !ruby/object:Gem::Dependency
71
70
  name: sass
72
- requirement: &2164768420 !ruby/object:Gem::Requirement
71
+ requirement: &2156682040 !ruby/object:Gem::Requirement
73
72
  none: false
74
73
  requirements:
75
74
  - - ! '>='
@@ -77,10 +76,10 @@ dependencies:
77
76
  version: '0'
78
77
  type: :development
79
78
  prerelease: false
80
- version_requirements: *2164768420
79
+ version_requirements: *2156682040
81
80
  - !ruby/object:Gem::Dependency
82
81
  name: haml
83
- requirement: &2164768000 !ruby/object:Gem::Requirement
82
+ requirement: &2156681620 !ruby/object:Gem::Requirement
84
83
  none: false
85
84
  requirements:
86
85
  - - ! '>='
@@ -88,10 +87,10 @@ dependencies:
88
87
  version: '0'
89
88
  type: :development
90
89
  prerelease: false
91
- version_requirements: *2164768000
90
+ version_requirements: *2156681620
92
91
  - !ruby/object:Gem::Dependency
93
92
  name: coffee-script
94
- requirement: &2164767500 !ruby/object:Gem::Requirement
93
+ requirement: &2156681200 !ruby/object:Gem::Requirement
95
94
  none: false
96
95
  requirements:
97
96
  - - ! '>='
@@ -99,10 +98,10 @@ dependencies:
99
98
  version: '0'
100
99
  type: :development
101
100
  prerelease: false
102
- version_requirements: *2164767500
101
+ version_requirements: *2156681200
103
102
  - !ruby/object:Gem::Dependency
104
103
  name: contest
105
- requirement: &2164767020 !ruby/object:Gem::Requirement
104
+ requirement: &2156680780 !ruby/object:Gem::Requirement
106
105
  none: false
107
106
  requirements:
108
107
  - - ! '>='
@@ -110,10 +109,10 @@ dependencies:
110
109
  version: '0'
111
110
  type: :development
112
111
  prerelease: false
113
- version_requirements: *2164767020
112
+ version_requirements: *2156680780
114
113
  - !ruby/object:Gem::Dependency
115
114
  name: mocha
116
- requirement: &2164766600 !ruby/object:Gem::Requirement
115
+ requirement: &2156680360 !ruby/object:Gem::Requirement
117
116
  none: false
118
117
  requirements:
119
118
  - - ! '>='
@@ -121,10 +120,10 @@ dependencies:
121
120
  version: '0'
122
121
  type: :development
123
122
  prerelease: false
124
- version_requirements: *2164766600
123
+ version_requirements: *2156680360
125
124
  - !ruby/object:Gem::Dependency
126
125
  name: stylus
127
- requirement: &2164766180 !ruby/object:Gem::Requirement
126
+ requirement: &2156679940 !ruby/object:Gem::Requirement
128
127
  none: false
129
128
  requirements:
130
129
  - - ! '>='
@@ -132,7 +131,7 @@ dependencies:
132
131
  version: '0'
133
132
  type: :development
134
133
  prerelease: false
135
- version_requirements: *2164766180
134
+ version_requirements: *2156679940
136
135
  description: Package your assets for Sinatra.
137
136
  email:
138
137
  - rico@sinefunc.com
@@ -145,16 +144,32 @@ files:
145
144
  - HISTORY.md
146
145
  - README.md
147
146
  - Rakefile
148
- - example/.gitignore
149
- - example/Rakefile
150
- - example/app.rb
151
- - example/app/css/test.sass
152
- - example/app/images/icon.png
153
- - example/app/js/app.js
154
- - example/app/js/vendor/jquery.js
155
- - example/app/js/vendor/jquery.plugin.js
156
- - example/app/js/vendor/underscore.js
157
- - example/views/index.erb
147
+ - docsrc/style.css
148
+ - examples/basic/.gitignore
149
+ - examples/basic/Rakefile
150
+ - examples/basic/app.rb
151
+ - examples/basic/app/css/test.sass
152
+ - examples/basic/app/images/icon.png
153
+ - examples/basic/app/js/app.js
154
+ - examples/basic/app/js/vendor/jquery.js
155
+ - examples/basic/app/js/vendor/jquery.plugin.js
156
+ - examples/basic/app/js/vendor/underscore.js
157
+ - examples/basic/views/index.erb
158
+ - examples/compass/.gitignore
159
+ - examples/compass/Rakefile
160
+ - examples/compass/app.rb
161
+ - examples/compass/app/css/main.scss
162
+ - examples/compass/app/images/icon-scfd8d7d404.png
163
+ - examples/compass/app/images/icon/mail.png
164
+ - examples/compass/app/images/icon/refresh.png
165
+ - examples/compass/app/images/junk/mail.png
166
+ - examples/compass/app/images/junk/refresh.png
167
+ - examples/compass/app/js/app.js
168
+ - examples/compass/app/js/vendor/jquery.js
169
+ - examples/compass/app/js/vendor/jquery.plugin.js
170
+ - examples/compass/app/js/vendor/underscore.js
171
+ - examples/compass/config.ru
172
+ - examples/compass/views/index.erb
158
173
  - lib/sinatra/assetpack.rb
159
174
  - lib/sinatra/assetpack/buster_helpers.rb
160
175
  - lib/sinatra/assetpack/class_methods.rb
@@ -173,6 +188,7 @@ files:
173
188
  - test/app/.gitignore
174
189
  - test/app/Rakefile
175
190
  - test/app/app.rb
191
+ - test/app/app/css/behavior.htc
176
192
  - test/app/app/css/js2c.css
177
193
  - test/app/app/css/screen.sass
178
194
  - test/app/app/css/sqwishable.css
@@ -183,13 +199,19 @@ files:
183
199
  - test/app/app/images/email.png
184
200
  - test/app/app/js/hello.js
185
201
  - test/app/app/js/hi.coffee
202
+ - test/app/app/js_glob/a/b/c1/hello.js
203
+ - test/app/app/js_glob/a/b/c2/hi.js
204
+ - test/app/app/js_glob/a/b/c2/hola.js
186
205
  - test/app/app/views/index.haml
187
206
  - test/arity_test.rb
188
207
  - test/build_test.rb
189
208
  - test/cache_test.rb
209
+ - test/compressed_test.rb
210
+ - test/glob_test.rb
190
211
  - test/helpers_test.rb
191
212
  - test/img_test.rb
192
213
  - test/local_file_test.rb
214
+ - test/mime_type_test.rb
193
215
  - test/non_existent_test.rb
194
216
  - test/options_test.rb
195
217
  - test/order_test.rb
@@ -198,11 +220,11 @@ files:
198
220
  - test/simplecss_test.rb
199
221
  - test/sqwish_test.rb
200
222
  - test/stylus_test.rb
223
+ - test/template_cache_test.rb
201
224
  - test/test_helper.rb
202
225
  - test/tilt_test.rb
203
226
  - test/unit_test.rb
204
227
  - test/yui_test.rb
205
- has_rdoc: true
206
228
  homepage: http://github.com/rstacruz/sinatra-assetpack
207
229
  licenses: []
208
230
  post_install_message:
@@ -223,7 +245,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
223
245
  version: '0'
224
246
  requirements: []
225
247
  rubyforge_project:
226
- rubygems_version: 1.6.2
248
+ rubygems_version: 1.8.10
227
249
  signing_key:
228
250
  specification_version: 3
229
251
  summary: Asset packager for Sinatra.