garterbelt 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.
- data/VERSION +1 -1
- data/garterbelt.gemspec +4 -1
- data/lib/renderers/text.rb +11 -9
- data/spec/integration/expectations/render_styles/pretty_with_embeds.html +19 -0
- data/spec/integration/expectations/unescaping_view.html +3 -2
- data/spec/integration/integration_spec.rb +4 -0
- data/spec/integration/templates/pretty_with_embeds.rb +25 -0
- metadata +6 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.9
|
data/garterbelt.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{garterbelt}
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.9"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Kane Baccigalupi"]
|
@@ -46,6 +46,7 @@ Gem::Specification.new do |s|
|
|
46
46
|
"spec/integration/expectations/general_view.html",
|
47
47
|
"spec/integration/expectations/render_styles/compact.html",
|
48
48
|
"spec/integration/expectations/render_styles/minified.html",
|
49
|
+
"spec/integration/expectations/render_styles/pretty_with_embeds.html",
|
49
50
|
"spec/integration/expectations/render_styles/text.html",
|
50
51
|
"spec/integration/expectations/unescaping_view.html",
|
51
52
|
"spec/integration/expectations/variables/view_with_user_and_params.html",
|
@@ -55,6 +56,7 @@ Gem::Specification.new do |s|
|
|
55
56
|
"spec/integration/expectations/view_with_tags.html",
|
56
57
|
"spec/integration/integration_spec.rb",
|
57
58
|
"spec/integration/templates/form.rb",
|
59
|
+
"spec/integration/templates/pretty_with_embeds.rb",
|
58
60
|
"spec/integration/templates/unescaping_view.rb",
|
59
61
|
"spec/integration/templates/view_partial_nest.rb",
|
60
62
|
"spec/integration/templates/view_with_cache.rb",
|
@@ -94,6 +96,7 @@ Gem::Specification.new do |s|
|
|
94
96
|
"spec/garterbelt_spec.rb",
|
95
97
|
"spec/integration/integration_spec.rb",
|
96
98
|
"spec/integration/templates/form.rb",
|
99
|
+
"spec/integration/templates/pretty_with_embeds.rb",
|
97
100
|
"spec/integration/templates/unescaping_view.rb",
|
98
101
|
"spec/integration/templates/view_partial_nest.rb",
|
99
102
|
"spec/integration/templates/view_with_cache.rb",
|
data/lib/renderers/text.rb
CHANGED
@@ -19,18 +19,20 @@ module Garterbelt
|
|
19
19
|
str
|
20
20
|
end
|
21
21
|
|
22
|
-
def
|
23
|
-
|
22
|
+
def escaped_content
|
23
|
+
if escape
|
24
|
+
str = ERB::Util.h(content)
|
25
|
+
if style == :pretty
|
26
|
+
str = str.wrap(Garterbelt.wrap_length, :indent => indent)
|
27
|
+
end
|
28
|
+
str
|
29
|
+
else
|
30
|
+
content
|
31
|
+
end
|
24
32
|
end
|
25
33
|
|
26
34
|
def template
|
27
|
-
|
28
|
-
|
29
|
-
if style == :pretty
|
30
|
-
"#{str.wrap(Garterbelt.wrap_length, :indent => indent)}#{line_end}"
|
31
|
-
else
|
32
|
-
"#{str}#{line_end}"
|
33
|
-
end
|
35
|
+
"#{escaped_content}#{line_end}"
|
34
36
|
end
|
35
37
|
end
|
36
38
|
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<script type="text/javascript">
|
5
|
+
alert("foo");
|
6
|
+
alert("bar");
|
7
|
+
var foo = 'foo';
|
8
|
+
</script>
|
9
|
+
<style type="text/css">
|
10
|
+
body { background-color: blue;}
|
11
|
+
p { background-color: white;}
|
12
|
+
</style>
|
13
|
+
</head>
|
14
|
+
<body>
|
15
|
+
<p>
|
16
|
+
Style me up!
|
17
|
+
</p>
|
18
|
+
</body>
|
19
|
+
</html>
|
@@ -1,2 +1,3 @@
|
|
1
|
-
You should check out my rad new site:<br>
|
2
|
-
href="http://foo.com">http://foo.com</a><br>
|
1
|
+
You should check out my rad new site:<br>
|
2
|
+
<a class="user_generated_link" href="http://foo.com">http://foo.com</a><br>
|
3
|
+
It will blow your mind!
|
@@ -74,5 +74,9 @@ describe Garterbelt::View, "Integration" do
|
|
74
74
|
it 'does text only' do
|
75
75
|
ViewWithContentTags.new.render(:style => :text).should == file("render_styles/text")
|
76
76
|
end
|
77
|
+
|
78
|
+
it 'styles do not screw up text line breaks, especially with raw text embeds' do
|
79
|
+
PrettyWithEmbeds.new.render.should == file('render_styles/pretty_with_embeds')
|
80
|
+
end
|
77
81
|
end
|
78
82
|
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
class PrettyWithEmbeds < Garterbelt::Page
|
2
|
+
def head
|
3
|
+
script 'type' => 'text/javascript' do
|
4
|
+
[
|
5
|
+
'alert("foo");',
|
6
|
+
"alert(\"bar\");\nvar foo = 'foo';"
|
7
|
+
].each do |js|
|
8
|
+
raw_text js
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
style 'type' => 'text/css' do
|
13
|
+
[
|
14
|
+
"body { background-color: blue;}",
|
15
|
+
"p { background-color: white;}"
|
16
|
+
].each do |css|
|
17
|
+
raw_text css
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
def body
|
23
|
+
p "Style me up!"
|
24
|
+
end
|
25
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: garterbelt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 13
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 9
|
10
|
+
version: 0.0.9
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Kane Baccigalupi
|
@@ -243,6 +243,7 @@ files:
|
|
243
243
|
- spec/integration/expectations/general_view.html
|
244
244
|
- spec/integration/expectations/render_styles/compact.html
|
245
245
|
- spec/integration/expectations/render_styles/minified.html
|
246
|
+
- spec/integration/expectations/render_styles/pretty_with_embeds.html
|
246
247
|
- spec/integration/expectations/render_styles/text.html
|
247
248
|
- spec/integration/expectations/unescaping_view.html
|
248
249
|
- spec/integration/expectations/variables/view_with_user_and_params.html
|
@@ -252,6 +253,7 @@ files:
|
|
252
253
|
- spec/integration/expectations/view_with_tags.html
|
253
254
|
- spec/integration/integration_spec.rb
|
254
255
|
- spec/integration/templates/form.rb
|
256
|
+
- spec/integration/templates/pretty_with_embeds.rb
|
255
257
|
- spec/integration/templates/unescaping_view.rb
|
256
258
|
- spec/integration/templates/view_partial_nest.rb
|
257
259
|
- spec/integration/templates/view_with_cache.rb
|
@@ -319,6 +321,7 @@ test_files:
|
|
319
321
|
- spec/garterbelt_spec.rb
|
320
322
|
- spec/integration/integration_spec.rb
|
321
323
|
- spec/integration/templates/form.rb
|
324
|
+
- spec/integration/templates/pretty_with_embeds.rb
|
322
325
|
- spec/integration/templates/unescaping_view.rb
|
323
326
|
- spec/integration/templates/view_partial_nest.rb
|
324
327
|
- spec/integration/templates/view_with_cache.rb
|