tilt 1.2.2 → 1.3.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.
@@ -0,0 +1,55 @@
1
+ require 'contest'
2
+ require 'tilt'
3
+
4
+ begin
5
+ require 'redcarpet'
6
+
7
+ class RedcarpetTemplateTest < Test::Unit::TestCase
8
+ test "registered for '.md' files" do
9
+ assert Tilt.mappings['md'].include?(Tilt::RedcarpetTemplate)
10
+ end
11
+
12
+ test "registered for '.mkd' files" do
13
+ assert Tilt.mappings['mkd'].include?(Tilt::RedcarpetTemplate)
14
+ end
15
+
16
+ test "registered for '.markdown' files" do
17
+ assert Tilt.mappings['markdown'].include?(Tilt::RedcarpetTemplate)
18
+ end
19
+
20
+ test "registered above BlueCloth" do
21
+ %w[md mkd markdown].each do |ext|
22
+ mappings = Tilt.mappings[ext]
23
+ blue_idx = mappings.index(Tilt::BlueClothTemplate)
24
+ rdis_idx = mappings.index(Tilt::RedcarpetTemplate)
25
+ assert rdis_idx < blue_idx,
26
+ "#{rdis_idx} should be lower than #{blue_idx}"
27
+ end
28
+ end
29
+
30
+ test "preparing and evaluating templates on #render" do
31
+ template = Tilt::RedcarpetTemplate.new { |t| "# Hello World!" }
32
+ assert_equal "<h1>Hello World!</h1>\n", template.render
33
+ end
34
+
35
+ test "can be rendered more than once" do
36
+ template = Tilt::RedcarpetTemplate.new { |t| "# Hello World!" }
37
+ 3.times { assert_equal "<h1>Hello World!</h1>\n", template.render }
38
+ end
39
+
40
+ test "smartypants when :smart is set" do
41
+ template = Tilt::RedcarpetTemplate.new(:smart => true) { |t|
42
+ "OKAY -- 'Smarty Pants'" }
43
+ assert_equal "<p>OKAY &mdash; &lsquo;Smarty Pants&rsquo;</p>\n",
44
+ template.render
45
+ end
46
+
47
+ test "stripping HTML when :filter_html is set" do
48
+ template = Tilt::RedcarpetTemplate.new(:filter_html => true) { |t|
49
+ "HELLO <blink>WORLD</blink>" }
50
+ assert_equal "<p>HELLO &lt;blink&gt;WORLD&lt;/blink&gt;</p>\n", template.render
51
+ end
52
+ end
53
+ rescue LoadError => boom
54
+ warn "Tilt::RedcarpetTemplate (disabled)\n"
55
+ end
@@ -19,6 +19,17 @@ begin
19
19
  template = Tilt::SassTemplate.new { |t| "#main\n :background-color #0000f1" }
20
20
  3.times { assert_equal "#main {\n background-color: #0000f1; }\n", template.render }
21
21
  end
22
+
23
+ test "uses configuration from Sass::Plugin.engine_options" do
24
+ begin
25
+ orig_style = Sass::Plugin.options[:style]
26
+ Sass::Plugin.options[:style] = :compressed
27
+ template = Tilt::SassTemplate.new { |t| "#main\n :background-color #0000f1" }
28
+ assert_equal "#main{background-color:#0000f1}\n", template.render
29
+ ensure
30
+ Sass::Plugin.options[:style] = orig_style
31
+ end
32
+ end
22
33
  end
23
34
 
24
35
  class ScssTemplateTest < Test::Unit::TestCase
@@ -48,9 +48,9 @@ class StringTemplateTest < Test::Unit::TestCase
48
48
  fail 'should have raised an exception'
49
49
  rescue => boom
50
50
  assert_kind_of NameError, boom
51
- line = boom.backtrace.first
51
+ line = boom.backtrace.grep(/^test\.str:/).first
52
+ assert line, "Backtrace didn't contain test.str"
52
53
  file, line, meth = line.split(":")
53
- assert_equal 'test.str', file
54
54
  assert_equal '13', line
55
55
  end
56
56
  end
@@ -119,6 +119,12 @@ class CompiledStringTemplateTest < Test::Unit::TestCase
119
119
  assert_equal "Hello\nWorld!\n", template.render(Scope.new)
120
120
  end
121
121
 
122
+
123
+ test "template with '}'" do
124
+ template = Tilt::StringTemplate.new { "Hello }" }
125
+ assert_equal "Hello }", template.render
126
+ end
127
+
122
128
  test "backtrace file and line reporting without locals" do
123
129
  data = File.read(__FILE__).split("\n__END__\n").last
124
130
  fail unless data[0] == ?<
@@ -129,8 +135,9 @@ class CompiledStringTemplateTest < Test::Unit::TestCase
129
135
  rescue => boom
130
136
  assert_kind_of NameError, boom
131
137
  line = boom.backtrace.first
138
+ line = boom.backtrace.grep(/^test\.str:/).first
139
+ assert line, "Backtrace didn't contain test.str"
132
140
  file, line, meth = line.split(":")
133
- assert_equal 'test.str', file
134
141
  assert_equal '13', line
135
142
  end
136
143
  end
@@ -121,6 +121,12 @@ class TiltTemplateTest < Test::Unit::TestCase
121
121
  assert inst.prepared?
122
122
  end
123
123
 
124
+ test "template_source with locals of strings" do
125
+ inst = SourceGeneratingMockTemplate.new { |t| 'Hey #{name}!' }
126
+ assert_equal "Hey Joe!", inst.render(Object.new, 'name' => 'Joe')
127
+ assert inst.prepared?
128
+ end
129
+
124
130
  class Person
125
131
  CONSTANT = "Bob"
126
132
 
data/tilt.gemspec CHANGED
@@ -3,8 +3,8 @@ Gem::Specification.new do |s|
3
3
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
4
4
 
5
5
  s.name = 'tilt'
6
- s.version = '1.2.2'
7
- s.date = '2011-01-17'
6
+ s.version = '1.3.1'
7
+ s.date = '2011-05-21'
8
8
 
9
9
  s.description = "Generic interface to multiple Ruby template engines"
10
10
  s.summary = s.description
@@ -20,6 +20,21 @@ Gem::Specification.new do |s|
20
20
  TEMPLATES.md
21
21
  bin/tilt
22
22
  lib/tilt.rb
23
+ lib/tilt/builder.rb
24
+ lib/tilt/coffee.rb
25
+ lib/tilt/creole.rb
26
+ lib/tilt/css.rb
27
+ lib/tilt/erb.rb
28
+ lib/tilt/haml.rb
29
+ lib/tilt/liquid.rb
30
+ lib/tilt/markaby.rb
31
+ lib/tilt/markdown.rb
32
+ lib/tilt/nokogiri.rb
33
+ lib/tilt/radius.rb
34
+ lib/tilt/rdoc.rb
35
+ lib/tilt/string.rb
36
+ lib/tilt/template.rb
37
+ lib/tilt/textile.rb
23
38
  test/contest.rb
24
39
  test/markaby/locals.mab
25
40
  test/markaby/markaby.mab
@@ -32,16 +47,22 @@ Gem::Specification.new do |s|
32
47
  test/tilt_cache_test.rb
33
48
  test/tilt_coffeescripttemplate_test.rb
34
49
  test/tilt_compilesite_test.rb
50
+ test/tilt_creoletemplate_test.rb
35
51
  test/tilt_erbtemplate_test.rb
36
52
  test/tilt_erubistemplate_test.rb
53
+ test/tilt_fallback_test.rb
37
54
  test/tilt_hamltemplate_test.rb
55
+ test/tilt_kramdown_test.rb
38
56
  test/tilt_lesstemplate_test.rb
39
57
  test/tilt_liquidtemplate_test.rb
40
58
  test/tilt_markaby_test.rb
59
+ test/tilt_markdown_test.rb
60
+ test/tilt_marukutemplate_test.rb
41
61
  test/tilt_nokogiritemplate_test.rb
42
62
  test/tilt_radiustemplate_test.rb
43
63
  test/tilt_rdiscounttemplate_test.rb
44
64
  test/tilt_rdoctemplate_test.rb
65
+ test/tilt_redcarpettemplate_test.rb
45
66
  test/tilt_redclothtemplate_test.rb
46
67
  test/tilt_sasstemplate_test.rb
47
68
  test/tilt_stringtemplate_test.rb
@@ -51,9 +72,7 @@ Gem::Specification.new do |s|
51
72
  ]
52
73
  # = MANIFEST =
53
74
 
54
- s.default_executable = 'tilt'
55
75
  s.executables = ['tilt']
56
-
57
76
  s.test_files = s.files.select {|path| path =~ /^test\/.*_test.rb/}
58
77
  s.add_development_dependency 'contest'
59
78
  s.add_development_dependency 'builder'
@@ -66,10 +85,12 @@ Gem::Specification.new do |s|
66
85
  s.add_development_dependency 'nokogiri'
67
86
  s.add_development_dependency 'markaby'
68
87
  s.add_development_dependency 'coffee-script'
88
+ s.add_development_dependency 'bluecloth'
89
+ s.add_development_dependency 'RedCloth'
90
+ s.add_development_dependency 'maruku'
91
+ s.add_development_dependency 'creole'
92
+ s.add_development_dependency 'kramdown'
69
93
 
70
- s.extra_rdoc_files = %w[COPYING]
71
-
72
- s.has_rdoc = true
73
94
  s.homepage = "http://github.com/rtomayko/tilt/"
74
95
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Tilt", "--main", "Tilt"]
75
96
  s.require_paths = %w[lib]
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tilt
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 25
4
5
  prerelease: false
5
6
  segments:
6
7
  - 1
7
- - 2
8
- - 2
9
- version: 1.2.2
8
+ - 3
9
+ - 1
10
+ version: 1.3.1
10
11
  platform: ruby
11
12
  authors:
12
13
  - Ryan Tomayko
@@ -14,8 +15,8 @@ autorequire:
14
15
  bindir: bin
15
16
  cert_chain: []
16
17
 
17
- date: 2011-01-17 00:00:00 -08:00
18
- default_executable: tilt
18
+ date: 2011-05-21 00:00:00 -07:00
19
+ default_executable:
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
22
  name: contest
@@ -25,6 +26,7 @@ dependencies:
25
26
  requirements:
26
27
  - - ">="
27
28
  - !ruby/object:Gem::Version
29
+ hash: 3
28
30
  segments:
29
31
  - 0
30
32
  version: "0"
@@ -38,6 +40,7 @@ dependencies:
38
40
  requirements:
39
41
  - - ">="
40
42
  - !ruby/object:Gem::Version
43
+ hash: 3
41
44
  segments:
42
45
  - 0
43
46
  version: "0"
@@ -51,6 +54,7 @@ dependencies:
51
54
  requirements:
52
55
  - - ">="
53
56
  - !ruby/object:Gem::Version
57
+ hash: 3
54
58
  segments:
55
59
  - 0
56
60
  version: "0"
@@ -64,6 +68,7 @@ dependencies:
64
68
  requirements:
65
69
  - - ">="
66
70
  - !ruby/object:Gem::Version
71
+ hash: 17
67
72
  segments:
68
73
  - 2
69
74
  - 2
@@ -79,6 +84,7 @@ dependencies:
79
84
  requirements:
80
85
  - - ">="
81
86
  - !ruby/object:Gem::Version
87
+ hash: 3
82
88
  segments:
83
89
  - 0
84
90
  version: "0"
@@ -92,6 +98,7 @@ dependencies:
92
98
  requirements:
93
99
  - - ">="
94
100
  - !ruby/object:Gem::Version
101
+ hash: 3
95
102
  segments:
96
103
  - 0
97
104
  version: "0"
@@ -105,6 +112,7 @@ dependencies:
105
112
  requirements:
106
113
  - - ">="
107
114
  - !ruby/object:Gem::Version
115
+ hash: 3
108
116
  segments:
109
117
  - 0
110
118
  version: "0"
@@ -118,6 +126,7 @@ dependencies:
118
126
  requirements:
119
127
  - - ">="
120
128
  - !ruby/object:Gem::Version
129
+ hash: 3
121
130
  segments:
122
131
  - 0
123
132
  version: "0"
@@ -131,6 +140,7 @@ dependencies:
131
140
  requirements:
132
141
  - - ">="
133
142
  - !ruby/object:Gem::Version
143
+ hash: 3
134
144
  segments:
135
145
  - 0
136
146
  version: "0"
@@ -144,6 +154,7 @@ dependencies:
144
154
  requirements:
145
155
  - - ">="
146
156
  - !ruby/object:Gem::Version
157
+ hash: 3
147
158
  segments:
148
159
  - 0
149
160
  version: "0"
@@ -157,19 +168,90 @@ dependencies:
157
168
  requirements:
158
169
  - - ">="
159
170
  - !ruby/object:Gem::Version
171
+ hash: 3
160
172
  segments:
161
173
  - 0
162
174
  version: "0"
163
175
  type: :development
164
176
  version_requirements: *id011
177
+ - !ruby/object:Gem::Dependency
178
+ name: bluecloth
179
+ prerelease: false
180
+ requirement: &id012 !ruby/object:Gem::Requirement
181
+ none: false
182
+ requirements:
183
+ - - ">="
184
+ - !ruby/object:Gem::Version
185
+ hash: 3
186
+ segments:
187
+ - 0
188
+ version: "0"
189
+ type: :development
190
+ version_requirements: *id012
191
+ - !ruby/object:Gem::Dependency
192
+ name: RedCloth
193
+ prerelease: false
194
+ requirement: &id013 !ruby/object:Gem::Requirement
195
+ none: false
196
+ requirements:
197
+ - - ">="
198
+ - !ruby/object:Gem::Version
199
+ hash: 3
200
+ segments:
201
+ - 0
202
+ version: "0"
203
+ type: :development
204
+ version_requirements: *id013
205
+ - !ruby/object:Gem::Dependency
206
+ name: maruku
207
+ prerelease: false
208
+ requirement: &id014 !ruby/object:Gem::Requirement
209
+ none: false
210
+ requirements:
211
+ - - ">="
212
+ - !ruby/object:Gem::Version
213
+ hash: 3
214
+ segments:
215
+ - 0
216
+ version: "0"
217
+ type: :development
218
+ version_requirements: *id014
219
+ - !ruby/object:Gem::Dependency
220
+ name: creole
221
+ prerelease: false
222
+ requirement: &id015 !ruby/object:Gem::Requirement
223
+ none: false
224
+ requirements:
225
+ - - ">="
226
+ - !ruby/object:Gem::Version
227
+ hash: 3
228
+ segments:
229
+ - 0
230
+ version: "0"
231
+ type: :development
232
+ version_requirements: *id015
233
+ - !ruby/object:Gem::Dependency
234
+ name: kramdown
235
+ prerelease: false
236
+ requirement: &id016 !ruby/object:Gem::Requirement
237
+ none: false
238
+ requirements:
239
+ - - ">="
240
+ - !ruby/object:Gem::Version
241
+ hash: 3
242
+ segments:
243
+ - 0
244
+ version: "0"
245
+ type: :development
246
+ version_requirements: *id016
165
247
  description: Generic interface to multiple Ruby template engines
166
248
  email: r@tomayko.com
167
249
  executables:
168
250
  - tilt
169
251
  extensions: []
170
252
 
171
- extra_rdoc_files:
172
- - COPYING
253
+ extra_rdoc_files: []
254
+
173
255
  files:
174
256
  - COPYING
175
257
  - README.md
@@ -177,6 +259,21 @@ files:
177
259
  - TEMPLATES.md
178
260
  - bin/tilt
179
261
  - lib/tilt.rb
262
+ - lib/tilt/builder.rb
263
+ - lib/tilt/coffee.rb
264
+ - lib/tilt/creole.rb
265
+ - lib/tilt/css.rb
266
+ - lib/tilt/erb.rb
267
+ - lib/tilt/haml.rb
268
+ - lib/tilt/liquid.rb
269
+ - lib/tilt/markaby.rb
270
+ - lib/tilt/markdown.rb
271
+ - lib/tilt/nokogiri.rb
272
+ - lib/tilt/radius.rb
273
+ - lib/tilt/rdoc.rb
274
+ - lib/tilt/string.rb
275
+ - lib/tilt/template.rb
276
+ - lib/tilt/textile.rb
180
277
  - test/contest.rb
181
278
  - test/markaby/locals.mab
182
279
  - test/markaby/markaby.mab
@@ -189,16 +286,22 @@ files:
189
286
  - test/tilt_cache_test.rb
190
287
  - test/tilt_coffeescripttemplate_test.rb
191
288
  - test/tilt_compilesite_test.rb
289
+ - test/tilt_creoletemplate_test.rb
192
290
  - test/tilt_erbtemplate_test.rb
193
291
  - test/tilt_erubistemplate_test.rb
292
+ - test/tilt_fallback_test.rb
194
293
  - test/tilt_hamltemplate_test.rb
294
+ - test/tilt_kramdown_test.rb
195
295
  - test/tilt_lesstemplate_test.rb
196
296
  - test/tilt_liquidtemplate_test.rb
197
297
  - test/tilt_markaby_test.rb
298
+ - test/tilt_markdown_test.rb
299
+ - test/tilt_marukutemplate_test.rb
198
300
  - test/tilt_nokogiritemplate_test.rb
199
301
  - test/tilt_radiustemplate_test.rb
200
302
  - test/tilt_rdiscounttemplate_test.rb
201
303
  - test/tilt_rdoctemplate_test.rb
304
+ - test/tilt_redcarpettemplate_test.rb
202
305
  - test/tilt_redclothtemplate_test.rb
203
306
  - test/tilt_sasstemplate_test.rb
204
307
  - test/tilt_stringtemplate_test.rb
@@ -224,6 +327,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
224
327
  requirements:
225
328
  - - ">="
226
329
  - !ruby/object:Gem::Version
330
+ hash: 3
227
331
  segments:
228
332
  - 0
229
333
  version: "0"
@@ -232,6 +336,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
232
336
  requirements:
233
337
  - - ">="
234
338
  - !ruby/object:Gem::Version
339
+ hash: 3
235
340
  segments:
236
341
  - 0
237
342
  version: "0"
@@ -248,16 +353,22 @@ test_files:
248
353
  - test/tilt_cache_test.rb
249
354
  - test/tilt_coffeescripttemplate_test.rb
250
355
  - test/tilt_compilesite_test.rb
356
+ - test/tilt_creoletemplate_test.rb
251
357
  - test/tilt_erbtemplate_test.rb
252
358
  - test/tilt_erubistemplate_test.rb
359
+ - test/tilt_fallback_test.rb
253
360
  - test/tilt_hamltemplate_test.rb
361
+ - test/tilt_kramdown_test.rb
254
362
  - test/tilt_lesstemplate_test.rb
255
363
  - test/tilt_liquidtemplate_test.rb
256
364
  - test/tilt_markaby_test.rb
365
+ - test/tilt_markdown_test.rb
366
+ - test/tilt_marukutemplate_test.rb
257
367
  - test/tilt_nokogiritemplate_test.rb
258
368
  - test/tilt_radiustemplate_test.rb
259
369
  - test/tilt_rdiscounttemplate_test.rb
260
370
  - test/tilt_rdoctemplate_test.rb
371
+ - test/tilt_redcarpettemplate_test.rb
261
372
  - test/tilt_redclothtemplate_test.rb
262
373
  - test/tilt_sasstemplate_test.rb
263
374
  - test/tilt_stringtemplate_test.rb