tilt 0.7 → 1.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.
- data/COPYING +1 -1
- data/README.md +50 -4
- data/Rakefile +7 -24
- data/TEMPLATES.md +71 -55
- data/bin/tilt +45 -16
- data/lib/tilt.rb +374 -165
- data/test/contest.rb +68 -0
- data/test/markaby/locals.mab +1 -0
- data/test/markaby/markaby.mab +1 -0
- data/test/markaby/markaby_other_static.mab +1 -0
- data/test/markaby/render_twice.mab +1 -0
- data/test/markaby/scope.mab +1 -0
- data/test/markaby/yielding.mab +2 -0
- data/test/tilt_cache_test.rb +2 -3
- data/test/tilt_coffeescripttemplate_test.rb +25 -0
- data/test/tilt_compilesite_test.rb +28 -4
- data/test/tilt_erbtemplate_test.rb +18 -1
- data/test/tilt_erubistemplate_test.rb +43 -0
- data/test/tilt_hamltemplate_test.rb +11 -0
- data/test/tilt_markaby_test.rb +73 -0
- data/test/tilt_nokogiritemplate_test.rb +54 -0
- data/test/tilt_radiustemplate_test.rb +70 -0
- data/test/tilt_sasstemplate_test.rb +13 -2
- data/test/tilt_stringtemplate_test.rb +1 -1
- data/test/tilt_template_test.rb +18 -1
- data/test/tilt_test.rb +9 -1
- data/tilt.gemspec +21 -8
- metadata +99 -20
- data/test/tilt_coffeetemplate_test.rb +0 -20
- data/test/tilt_mustache_views/external.rb +0 -9
- data/test/tilt_mustachetemplate_test.rb +0 -70
metadata
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: tilt
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
+
hash: 13
|
|
4
5
|
prerelease: false
|
|
5
6
|
segments:
|
|
6
|
-
-
|
|
7
|
-
-
|
|
8
|
-
version: "
|
|
7
|
+
- 1
|
|
8
|
+
- 1
|
|
9
|
+
version: "1.1"
|
|
9
10
|
platform: ruby
|
|
10
11
|
authors:
|
|
11
12
|
- Ryan Tomayko
|
|
@@ -13,16 +14,18 @@ autorequire:
|
|
|
13
14
|
bindir: bin
|
|
14
15
|
cert_chain: []
|
|
15
16
|
|
|
16
|
-
date: 2010-
|
|
17
|
-
default_executable:
|
|
17
|
+
date: 2010-09-10 00:00:00 -07:00
|
|
18
|
+
default_executable: tilt
|
|
18
19
|
dependencies:
|
|
19
20
|
- !ruby/object:Gem::Dependency
|
|
20
21
|
name: contest
|
|
21
22
|
prerelease: false
|
|
22
23
|
requirement: &id001 !ruby/object:Gem::Requirement
|
|
24
|
+
none: false
|
|
23
25
|
requirements:
|
|
24
26
|
- - ">="
|
|
25
27
|
- !ruby/object:Gem::Version
|
|
28
|
+
hash: 3
|
|
26
29
|
segments:
|
|
27
30
|
- 0
|
|
28
31
|
version: "0"
|
|
@@ -32,9 +35,11 @@ dependencies:
|
|
|
32
35
|
name: builder
|
|
33
36
|
prerelease: false
|
|
34
37
|
requirement: &id002 !ruby/object:Gem::Requirement
|
|
38
|
+
none: false
|
|
35
39
|
requirements:
|
|
36
40
|
- - ">="
|
|
37
41
|
- !ruby/object:Gem::Version
|
|
42
|
+
hash: 3
|
|
38
43
|
segments:
|
|
39
44
|
- 0
|
|
40
45
|
version: "0"
|
|
@@ -44,9 +49,11 @@ dependencies:
|
|
|
44
49
|
name: erubis
|
|
45
50
|
prerelease: false
|
|
46
51
|
requirement: &id003 !ruby/object:Gem::Requirement
|
|
52
|
+
none: false
|
|
47
53
|
requirements:
|
|
48
54
|
- - ">="
|
|
49
55
|
- !ruby/object:Gem::Version
|
|
56
|
+
hash: 3
|
|
50
57
|
segments:
|
|
51
58
|
- 0
|
|
52
59
|
version: "0"
|
|
@@ -56,78 +63,120 @@ dependencies:
|
|
|
56
63
|
name: haml
|
|
57
64
|
prerelease: false
|
|
58
65
|
requirement: &id004 !ruby/object:Gem::Requirement
|
|
66
|
+
none: false
|
|
59
67
|
requirements:
|
|
60
68
|
- - ">="
|
|
61
69
|
- !ruby/object:Gem::Version
|
|
70
|
+
hash: 17
|
|
62
71
|
segments:
|
|
63
|
-
-
|
|
64
|
-
|
|
72
|
+
- 2
|
|
73
|
+
- 2
|
|
74
|
+
- 11
|
|
75
|
+
version: 2.2.11
|
|
65
76
|
type: :development
|
|
66
77
|
version_requirements: *id004
|
|
67
78
|
- !ruby/object:Gem::Dependency
|
|
68
|
-
name:
|
|
79
|
+
name: rdiscount
|
|
69
80
|
prerelease: false
|
|
70
81
|
requirement: &id005 !ruby/object:Gem::Requirement
|
|
82
|
+
none: false
|
|
71
83
|
requirements:
|
|
72
84
|
- - ">="
|
|
73
85
|
- !ruby/object:Gem::Version
|
|
86
|
+
hash: 3
|
|
74
87
|
segments:
|
|
75
88
|
- 0
|
|
76
89
|
version: "0"
|
|
77
90
|
type: :development
|
|
78
91
|
version_requirements: *id005
|
|
79
92
|
- !ruby/object:Gem::Dependency
|
|
80
|
-
name:
|
|
93
|
+
name: liquid
|
|
81
94
|
prerelease: false
|
|
82
95
|
requirement: &id006 !ruby/object:Gem::Requirement
|
|
96
|
+
none: false
|
|
83
97
|
requirements:
|
|
84
98
|
- - ">="
|
|
85
99
|
- !ruby/object:Gem::Version
|
|
100
|
+
hash: 3
|
|
86
101
|
segments:
|
|
87
102
|
- 0
|
|
88
103
|
version: "0"
|
|
89
104
|
type: :development
|
|
90
105
|
version_requirements: *id006
|
|
91
106
|
- !ruby/object:Gem::Dependency
|
|
92
|
-
name:
|
|
107
|
+
name: less
|
|
93
108
|
prerelease: false
|
|
94
109
|
requirement: &id007 !ruby/object:Gem::Requirement
|
|
110
|
+
none: false
|
|
95
111
|
requirements:
|
|
96
112
|
- - ">="
|
|
97
113
|
- !ruby/object:Gem::Version
|
|
114
|
+
hash: 3
|
|
98
115
|
segments:
|
|
99
116
|
- 0
|
|
100
117
|
version: "0"
|
|
101
118
|
type: :development
|
|
102
119
|
version_requirements: *id007
|
|
103
120
|
- !ruby/object:Gem::Dependency
|
|
104
|
-
name:
|
|
121
|
+
name: radius
|
|
105
122
|
prerelease: false
|
|
106
123
|
requirement: &id008 !ruby/object:Gem::Requirement
|
|
124
|
+
none: false
|
|
107
125
|
requirements:
|
|
108
126
|
- - ">="
|
|
109
127
|
- !ruby/object:Gem::Version
|
|
128
|
+
hash: 3
|
|
110
129
|
segments:
|
|
111
130
|
- 0
|
|
112
131
|
version: "0"
|
|
113
132
|
type: :development
|
|
114
133
|
version_requirements: *id008
|
|
115
134
|
- !ruby/object:Gem::Dependency
|
|
116
|
-
name:
|
|
135
|
+
name: nokogiri
|
|
117
136
|
prerelease: false
|
|
118
137
|
requirement: &id009 !ruby/object:Gem::Requirement
|
|
138
|
+
none: false
|
|
119
139
|
requirements:
|
|
120
140
|
- - ">="
|
|
121
141
|
- !ruby/object:Gem::Version
|
|
142
|
+
hash: 3
|
|
122
143
|
segments:
|
|
123
144
|
- 0
|
|
124
145
|
version: "0"
|
|
125
146
|
type: :development
|
|
126
147
|
version_requirements: *id009
|
|
148
|
+
- !ruby/object:Gem::Dependency
|
|
149
|
+
name: markaby
|
|
150
|
+
prerelease: false
|
|
151
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
|
152
|
+
none: false
|
|
153
|
+
requirements:
|
|
154
|
+
- - ">="
|
|
155
|
+
- !ruby/object:Gem::Version
|
|
156
|
+
hash: 3
|
|
157
|
+
segments:
|
|
158
|
+
- 0
|
|
159
|
+
version: "0"
|
|
160
|
+
type: :development
|
|
161
|
+
version_requirements: *id010
|
|
162
|
+
- !ruby/object:Gem::Dependency
|
|
163
|
+
name: coffee-script
|
|
164
|
+
prerelease: false
|
|
165
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
|
166
|
+
none: false
|
|
167
|
+
requirements:
|
|
168
|
+
- - ">="
|
|
169
|
+
- !ruby/object:Gem::Version
|
|
170
|
+
hash: 3
|
|
171
|
+
segments:
|
|
172
|
+
- 0
|
|
173
|
+
version: "0"
|
|
174
|
+
type: :development
|
|
175
|
+
version_requirements: *id011
|
|
127
176
|
description: Generic interface to multiple Ruby template engines
|
|
128
177
|
email: r@tomayko.com
|
|
129
|
-
executables:
|
|
130
|
-
|
|
178
|
+
executables:
|
|
179
|
+
- tilt
|
|
131
180
|
extensions: []
|
|
132
181
|
|
|
133
182
|
extra_rdoc_files:
|
|
@@ -139,17 +188,25 @@ files:
|
|
|
139
188
|
- TEMPLATES.md
|
|
140
189
|
- bin/tilt
|
|
141
190
|
- lib/tilt.rb
|
|
191
|
+
- test/contest.rb
|
|
192
|
+
- test/markaby/locals.mab
|
|
193
|
+
- test/markaby/markaby.mab
|
|
194
|
+
- test/markaby/markaby_other_static.mab
|
|
195
|
+
- test/markaby/render_twice.mab
|
|
196
|
+
- test/markaby/scope.mab
|
|
197
|
+
- test/markaby/yielding.mab
|
|
142
198
|
- test/tilt_buildertemplate_test.rb
|
|
143
199
|
- test/tilt_cache_test.rb
|
|
144
|
-
- test/
|
|
200
|
+
- test/tilt_coffeescripttemplate_test.rb
|
|
145
201
|
- test/tilt_compilesite_test.rb
|
|
146
202
|
- test/tilt_erbtemplate_test.rb
|
|
147
203
|
- test/tilt_erubistemplate_test.rb
|
|
148
204
|
- test/tilt_hamltemplate_test.rb
|
|
149
205
|
- test/tilt_lesstemplate_test.rb
|
|
150
206
|
- test/tilt_liquidtemplate_test.rb
|
|
151
|
-
- test/
|
|
152
|
-
- test/
|
|
207
|
+
- test/tilt_markaby_test.rb
|
|
208
|
+
- test/tilt_nokogiritemplate_test.rb
|
|
209
|
+
- test/tilt_radiustemplate_test.rb
|
|
153
210
|
- test/tilt_rdiscounttemplate_test.rb
|
|
154
211
|
- test/tilt_rdoctemplate_test.rb
|
|
155
212
|
- test/tilt_redclothtemplate_test.rb
|
|
@@ -173,25 +230,47 @@ rdoc_options:
|
|
|
173
230
|
require_paths:
|
|
174
231
|
- lib
|
|
175
232
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
233
|
+
none: false
|
|
176
234
|
requirements:
|
|
177
235
|
- - ">="
|
|
178
236
|
- !ruby/object:Gem::Version
|
|
237
|
+
hash: 3
|
|
179
238
|
segments:
|
|
180
239
|
- 0
|
|
181
240
|
version: "0"
|
|
182
241
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
242
|
+
none: false
|
|
183
243
|
requirements:
|
|
184
244
|
- - ">="
|
|
185
245
|
- !ruby/object:Gem::Version
|
|
246
|
+
hash: 3
|
|
186
247
|
segments:
|
|
187
248
|
- 0
|
|
188
249
|
version: "0"
|
|
189
250
|
requirements: []
|
|
190
251
|
|
|
191
252
|
rubyforge_project: wink
|
|
192
|
-
rubygems_version: 1.3.
|
|
253
|
+
rubygems_version: 1.3.7
|
|
193
254
|
signing_key:
|
|
194
255
|
specification_version: 2
|
|
195
256
|
summary: Generic interface to multiple Ruby template engines
|
|
196
|
-
test_files:
|
|
197
|
-
|
|
257
|
+
test_files:
|
|
258
|
+
- test/tilt_buildertemplate_test.rb
|
|
259
|
+
- test/tilt_cache_test.rb
|
|
260
|
+
- test/tilt_coffeescripttemplate_test.rb
|
|
261
|
+
- test/tilt_compilesite_test.rb
|
|
262
|
+
- test/tilt_erbtemplate_test.rb
|
|
263
|
+
- test/tilt_erubistemplate_test.rb
|
|
264
|
+
- test/tilt_hamltemplate_test.rb
|
|
265
|
+
- test/tilt_lesstemplate_test.rb
|
|
266
|
+
- test/tilt_liquidtemplate_test.rb
|
|
267
|
+
- test/tilt_markaby_test.rb
|
|
268
|
+
- test/tilt_nokogiritemplate_test.rb
|
|
269
|
+
- test/tilt_radiustemplate_test.rb
|
|
270
|
+
- test/tilt_rdiscounttemplate_test.rb
|
|
271
|
+
- test/tilt_rdoctemplate_test.rb
|
|
272
|
+
- test/tilt_redclothtemplate_test.rb
|
|
273
|
+
- test/tilt_sasstemplate_test.rb
|
|
274
|
+
- test/tilt_stringtemplate_test.rb
|
|
275
|
+
- test/tilt_template_test.rb
|
|
276
|
+
- test/tilt_test.rb
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
require 'contest'
|
|
2
|
-
require 'tilt'
|
|
3
|
-
|
|
4
|
-
begin
|
|
5
|
-
require 'coffee-script'
|
|
6
|
-
|
|
7
|
-
class CoffeeTemplateTest < Test::Unit::TestCase
|
|
8
|
-
test "is registered for '.coffee' files" do
|
|
9
|
-
assert_equal Tilt::CoffeeTemplate, Tilt['test.coffee']
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
test "compiles and evaluates the template on #render" do
|
|
13
|
-
template = Tilt::CoffeeTemplate.new { |t| "greeting: \"Hello CoffeeScript\"" }
|
|
14
|
-
assert_equal "(function(){\n var greeting;\n greeting = \"Hello CoffeeScript\";\n})();", template.render
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
rescue LoadError => boom
|
|
19
|
-
warn "Tilt::CoffeeTemplate (disabled)\n"
|
|
20
|
-
end
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
require 'contest'
|
|
2
|
-
require 'tilt'
|
|
3
|
-
|
|
4
|
-
begin
|
|
5
|
-
require 'mustache'
|
|
6
|
-
raise LoadError, "mustache version must be > 0.2.2" if !Mustache.respond_to?(:compiled?)
|
|
7
|
-
|
|
8
|
-
module Views
|
|
9
|
-
class Foo < Mustache
|
|
10
|
-
attr_reader :foo
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
class MustacheTemplateTest < Test::Unit::TestCase
|
|
15
|
-
test "registered for '.mustache' files" do
|
|
16
|
-
assert_equal Tilt::MustacheTemplate, Tilt['test.mustache']
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
test "preparing and evaluating templates on #render" do
|
|
20
|
-
template = Tilt::MustacheTemplate.new { |t| "Hello World!" }
|
|
21
|
-
assert_equal "Hello World!", template.render
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
test "passing locals" do
|
|
25
|
-
template = Tilt::MustacheTemplate.new { "<p>Hey {{name}}!</p>" }
|
|
26
|
-
assert_equal "<p>Hey Joe!</p>", template.render(nil, :name => 'Joe')
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
test "passing a block for yield" do
|
|
30
|
-
template = Tilt::MustacheTemplate.new { "<p>Hey {{yield}}!</p>" }
|
|
31
|
-
assert_equal "<p>Hey Joe!</p>", template.render { 'Joe' }
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
test "locating views defined at the top-level" do
|
|
35
|
-
template = Tilt::MustacheTemplate.new('foo.mustache') { "<p>Hey {{foo}}!</p>" }
|
|
36
|
-
assert_equal Views::Foo, template.engine
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
module Bar
|
|
40
|
-
module Views
|
|
41
|
-
class Bizzle < Mustache
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
test "locating views defined in a custom namespace" do
|
|
47
|
-
template = Tilt::MustacheTemplate.new('bizzle.mustache', :namespace => Bar) { "<p>Hello World!</p>" }
|
|
48
|
-
assert_equal Bar::Views::Bizzle, template.engine
|
|
49
|
-
assert_equal "<p>Hello World!</p>", template.render
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
test "locating views in files" do
|
|
53
|
-
view_path = File.expand_path('../tilt_mustache_views', __FILE__)
|
|
54
|
-
template = Tilt::MustacheTemplate.new('external.mustache', :view_path => view_path) { "<p>{{hello}}!</p>" }
|
|
55
|
-
assert defined?(Views::External), "external.rb should have been required"
|
|
56
|
-
assert_equal Views::External, template.engine
|
|
57
|
-
assert_equal "<p>Stached!</p>", template.render
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
test "copying instance variables from scope object" do
|
|
61
|
-
template = Tilt::MustacheTemplate.new('foo.mustache') { "<p>Hey {{foo}}!</p>" }
|
|
62
|
-
scope = Object.new
|
|
63
|
-
scope.instance_variable_set(:@foo, 'Jane!')
|
|
64
|
-
assert_equal "<p>Hey Jane!!</p>", template.render(scope)
|
|
65
|
-
end
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
rescue LoadError => boom
|
|
69
|
-
warn "Tilt::MustacheTemplate (disabled)\n"
|
|
70
|
-
end
|