html2fortitude 0.0.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.
- checksums.yaml +7 -0
- data/.gitignore +10 -0
- data/.rspec-local +4 -0
- data/.travis.yml +16 -0
- data/.yardopts +1 -0
- data/Gemfile +5 -0
- data/MIT-LICENSE +38 -0
- data/README.md +97 -0
- data/Rakefile +29 -0
- data/bin/html2fortitude +7 -0
- data/html2fortitude.gemspec +31 -0
- data/lib/html2fortitude.rb +6 -0
- data/lib/html2fortitude/html.rb +755 -0
- data/lib/html2fortitude/html/erb.rb +156 -0
- data/lib/html2fortitude/run.rb +103 -0
- data/lib/html2fortitude/source_template.rb +93 -0
- data/lib/html2fortitude/version.rb +3 -0
- data/spec/helpers/global_helper.rb +6 -0
- data/spec/helpers/html2fortitude_result.rb +71 -0
- data/spec/helpers/standard_helper.rb +70 -0
- data/spec/system/basic_system_spec.rb +13 -0
- data/spec/system/command_line_spec.rb +411 -0
- data/spec/system/erb_system_spec.rb +208 -0
- data/spec/system/needs_system_spec.rb +73 -0
- data/spec/system/options_system_spec.rb +43 -0
- data/spec/system/other_stuff_system_spec.rb +39 -0
- data/spec/system/rails_system_spec.rb +9 -0
- data/spec/system/tags_system_spec.rb +252 -0
- data/spec/system/text_system_spec.rb +106 -0
- data/test/erb_test.rb +546 -0
- data/test/html2fortitude_test.rb +424 -0
- data/test/jruby/erb_test.rb +39 -0
- data/test/jruby/html2fortitude_test.rb +72 -0
- data/test/test_helper.rb +22 -0
- metadata +238 -0
data/test/erb_test.rb
ADDED
@@ -0,0 +1,546 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class ErbTest < MiniTest::Unit::TestCase
|
4
|
+
def test_erb
|
5
|
+
assert_equal '- foo = bar', render_erb('<% foo = bar %>')
|
6
|
+
assert_equal '- foo = bar', render_erb('<% foo = bar -%>')
|
7
|
+
assert_equal '= h @item.title', render_erb('<%=h @item.title %>')
|
8
|
+
assert_equal '= h @item.title', render_erb('<%=h @item.title -%>')
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_inline_erb
|
12
|
+
assert_equal("%p= foo", render_erb("<p><%= foo %></p>"))
|
13
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<HTML))
|
14
|
+
%p= foo
|
15
|
+
FORTITUDE
|
16
|
+
<p><%= foo %>
|
17
|
+
</p>
|
18
|
+
HTML
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_non_inline_erb
|
22
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<HTML))
|
23
|
+
%p
|
24
|
+
= foo
|
25
|
+
FORTITUDE
|
26
|
+
<p>
|
27
|
+
<%= foo %>
|
28
|
+
</p>
|
29
|
+
HTML
|
30
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<HTML))
|
31
|
+
%p
|
32
|
+
= foo
|
33
|
+
FORTITUDE
|
34
|
+
<p>
|
35
|
+
<%= foo %></p>
|
36
|
+
HTML
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_erb_in_cdata
|
40
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<HTML))
|
41
|
+
:cdata
|
42
|
+
Foo \#{bar} baz
|
43
|
+
FORTITUDE
|
44
|
+
<![CDATA[Foo <%= bar %> baz]]>
|
45
|
+
HTML
|
46
|
+
end
|
47
|
+
|
48
|
+
def test_erb_in_script
|
49
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<HTML))
|
50
|
+
:javascript
|
51
|
+
function foo() {
|
52
|
+
return \#{foo.to_json};
|
53
|
+
}
|
54
|
+
FORTITUDE
|
55
|
+
<script type="text/javascript">
|
56
|
+
function foo() {
|
57
|
+
return <%= foo.to_json %>;
|
58
|
+
}
|
59
|
+
</script>
|
60
|
+
HTML
|
61
|
+
end
|
62
|
+
|
63
|
+
def test_erb_in_style
|
64
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<HTML))
|
65
|
+
:css
|
66
|
+
foo {
|
67
|
+
bar: \#{"baz"};
|
68
|
+
}
|
69
|
+
FORTITUDE
|
70
|
+
<style type="text/css">
|
71
|
+
foo {
|
72
|
+
bar: <%= "baz" %>;
|
73
|
+
}
|
74
|
+
</style>
|
75
|
+
HTML
|
76
|
+
end
|
77
|
+
|
78
|
+
def test_erb_in_line
|
79
|
+
assert_equal 'foo bar #{baz}', render_erb('foo bar <%= baz %>')
|
80
|
+
assert_equal 'foo bar #{baz}! Bang.', render_erb('foo bar <%= baz %>! Bang.')
|
81
|
+
end
|
82
|
+
|
83
|
+
def test_erb_multi_in_line
|
84
|
+
assert_equal('foo bar #{baz}! Bang #{bop}.',
|
85
|
+
render_erb('foo bar <%= baz %>! Bang <%= bop %>.'))
|
86
|
+
assert_equal('foo bar #{baz}#{bop}!',
|
87
|
+
render_erb('foo bar <%= baz %><%= bop %>!'))
|
88
|
+
end
|
89
|
+
|
90
|
+
def test_erb_with_html_special_chars
|
91
|
+
assert_equal '= 3 < 5 ? "OK" : "Your computer is b0rken"',
|
92
|
+
render_erb('<%= 3 < 5 ? "OK" : "Your computer is b0rken" %>')
|
93
|
+
end
|
94
|
+
|
95
|
+
def test_erb_in_class_attribute
|
96
|
+
assert_equal "%div{:class => dyna_class} I have a dynamic attribute",
|
97
|
+
render_erb('<div class="<%= dyna_class %>">I have a dynamic attribute</div>')
|
98
|
+
end
|
99
|
+
|
100
|
+
def test_erb_in_id_attribute
|
101
|
+
assert_equal "%div{:id => dyna_id} I have a dynamic attribute",
|
102
|
+
render_erb('<div id="<%= dyna_id %>">I have a dynamic attribute</div>')
|
103
|
+
end
|
104
|
+
|
105
|
+
def test_erb_in_attribute_results_in_string_interpolation
|
106
|
+
assert_equal('%div{:id => "item_#{i}"} Ruby string interpolation FTW',
|
107
|
+
render_erb('<div id="item_<%= i %>">Ruby string interpolation FTW</div>'))
|
108
|
+
end
|
109
|
+
|
110
|
+
def test_erb_in_attribute_with_trailing_content
|
111
|
+
assert_equal('%div{:class => "#{12}!"} Bang!',
|
112
|
+
render_erb('<div class="<%= 12 %>!">Bang!</div>'))
|
113
|
+
end
|
114
|
+
|
115
|
+
def test_erb_in_html_escaped_attribute
|
116
|
+
assert_equal '%div{:class => "foo"} Bang!',
|
117
|
+
render_erb('<div class="<%= "foo" %>">Bang!</div>')
|
118
|
+
end
|
119
|
+
|
120
|
+
def test_erb_in_html_escaped_attribute_with_symbol
|
121
|
+
assert_equal '%div{:class => :foo} Bang!',
|
122
|
+
render_erb('<div class="<%= :foo %>">Bang!</div>')
|
123
|
+
end
|
124
|
+
|
125
|
+
def test_empty_erb_in_attribute
|
126
|
+
assert_equal '%div{:class => ""}',
|
127
|
+
render_erb('<div class="<%= %>"></div>')
|
128
|
+
end
|
129
|
+
|
130
|
+
def test_erb_in_attribute_to_multiple_interpolations
|
131
|
+
assert_equal('%div{:class => "#{12} + #{13}"} Math is super',
|
132
|
+
render_erb('<div class="<%= 12 %> + <%= 13 %>">Math is super</div>'))
|
133
|
+
end
|
134
|
+
|
135
|
+
def test_whitespace_eating_erb_tags
|
136
|
+
assert_equal '- form_for', render_erb('<%- form_for -%>')
|
137
|
+
end
|
138
|
+
|
139
|
+
def test_interpolation_in_erb
|
140
|
+
assert_equal('= "Foo #{bar} baz"', render_erb('<%= "Foo #{bar} baz" %>'))
|
141
|
+
end
|
142
|
+
|
143
|
+
def test_interpolation_in_erb_attrs
|
144
|
+
assert_equal('%p{:foo => "#{bar} baz"}',
|
145
|
+
render_erb('<p foo="<%= "#{bar} baz" %>"></p>'))
|
146
|
+
end
|
147
|
+
|
148
|
+
def test_multiline_erb_silent_script
|
149
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
150
|
+
.blah
|
151
|
+
- foo
|
152
|
+
- bar
|
153
|
+
- baz
|
154
|
+
%p foo
|
155
|
+
FORTITUDE
|
156
|
+
<div class="blah">
|
157
|
+
<%
|
158
|
+
foo
|
159
|
+
bar
|
160
|
+
baz
|
161
|
+
%>
|
162
|
+
<p>foo</p>
|
163
|
+
</div>
|
164
|
+
ERB
|
165
|
+
end
|
166
|
+
|
167
|
+
def test_multiline_erb_loud_script
|
168
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
169
|
+
.blah
|
170
|
+
= foo + |
|
171
|
+
bar.baz.bang + |
|
172
|
+
baz |
|
173
|
+
%p foo
|
174
|
+
FORTITUDE
|
175
|
+
<div class="blah">
|
176
|
+
<%=
|
177
|
+
foo +
|
178
|
+
bar.baz.bang +
|
179
|
+
baz
|
180
|
+
%>
|
181
|
+
<p>foo</p>
|
182
|
+
</div>
|
183
|
+
ERB
|
184
|
+
end
|
185
|
+
|
186
|
+
def test_weirdly_indented_multiline_erb_loud_script
|
187
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
188
|
+
.blah
|
189
|
+
= foo + |
|
190
|
+
bar.baz.bang + |
|
191
|
+
baz |
|
192
|
+
%p foo
|
193
|
+
FORTITUDE
|
194
|
+
<div class="blah">
|
195
|
+
<%=
|
196
|
+
foo +
|
197
|
+
bar.baz.bang +
|
198
|
+
baz
|
199
|
+
%>
|
200
|
+
<p>foo</p>
|
201
|
+
</div>
|
202
|
+
ERB
|
203
|
+
end
|
204
|
+
|
205
|
+
def test_two_multiline_erb_loud_scripts
|
206
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
207
|
+
.blah
|
208
|
+
= foo + |
|
209
|
+
bar.baz.bang + |
|
210
|
+
baz |
|
211
|
+
-#
|
212
|
+
= foo.bar do |
|
213
|
+
bang |
|
214
|
+
end |
|
215
|
+
%p foo
|
216
|
+
FORTITUDE
|
217
|
+
<div class="blah">
|
218
|
+
<%=
|
219
|
+
foo +
|
220
|
+
bar.baz.bang +
|
221
|
+
baz
|
222
|
+
%>
|
223
|
+
<%= foo.bar do
|
224
|
+
bang
|
225
|
+
end %>
|
226
|
+
<p>foo</p>
|
227
|
+
</div>
|
228
|
+
ERB
|
229
|
+
end
|
230
|
+
|
231
|
+
def test_multiline_then_single_line_erb_loud_scripts
|
232
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
233
|
+
.blah
|
234
|
+
= foo + |
|
235
|
+
bar.baz.bang + |
|
236
|
+
baz |
|
237
|
+
= foo.bar
|
238
|
+
%p foo
|
239
|
+
FORTITUDE
|
240
|
+
<div class="blah">
|
241
|
+
<%=
|
242
|
+
foo +
|
243
|
+
bar.baz.bang +
|
244
|
+
baz
|
245
|
+
%>
|
246
|
+
<%= foo.bar %>
|
247
|
+
<p>foo</p>
|
248
|
+
</div>
|
249
|
+
ERB
|
250
|
+
end
|
251
|
+
|
252
|
+
def test_multiline_erb_but_really_single_line
|
253
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
254
|
+
.blah
|
255
|
+
= foo
|
256
|
+
%p foo
|
257
|
+
FORTITUDE
|
258
|
+
<div class="blah">
|
259
|
+
<%=
|
260
|
+
foo
|
261
|
+
%>
|
262
|
+
<p>foo</p>
|
263
|
+
</div>
|
264
|
+
ERB
|
265
|
+
end
|
266
|
+
|
267
|
+
### Block Parsing
|
268
|
+
|
269
|
+
def test_block_parsing
|
270
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
271
|
+
- foo do
|
272
|
+
%p bar
|
273
|
+
FORTITUDE
|
274
|
+
<% foo do %>
|
275
|
+
<p>bar</p>
|
276
|
+
<% end %>
|
277
|
+
ERB
|
278
|
+
end
|
279
|
+
|
280
|
+
def test_block_parsing_with_args
|
281
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
282
|
+
- foo do |a, b, c|
|
283
|
+
%p bar
|
284
|
+
FORTITUDE
|
285
|
+
<% foo do |a, b, c| %>
|
286
|
+
<p>bar</p>
|
287
|
+
<% end %>
|
288
|
+
ERB
|
289
|
+
end
|
290
|
+
|
291
|
+
def test_block_parsing_with_equals
|
292
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
293
|
+
= foo do
|
294
|
+
%p bar
|
295
|
+
FORTITUDE
|
296
|
+
<%= foo do %>
|
297
|
+
<p>bar</p>
|
298
|
+
<% end %>
|
299
|
+
ERB
|
300
|
+
end
|
301
|
+
|
302
|
+
def test_block_parsing_with_modified_end
|
303
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
304
|
+
- foo do
|
305
|
+
blah
|
306
|
+
- end.bip
|
307
|
+
FORTITUDE
|
308
|
+
<% foo do %>
|
309
|
+
blah
|
310
|
+
<% end.bip %>
|
311
|
+
ERB
|
312
|
+
end
|
313
|
+
|
314
|
+
def test_block_parsing_with_modified_end_with_block
|
315
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
316
|
+
- foo do
|
317
|
+
blah
|
318
|
+
- end.bip do
|
319
|
+
brang
|
320
|
+
FORTITUDE
|
321
|
+
<% foo do %>
|
322
|
+
blah
|
323
|
+
<% end.bip do %>
|
324
|
+
brang
|
325
|
+
<% end %>
|
326
|
+
ERB
|
327
|
+
end
|
328
|
+
|
329
|
+
def test_multiline_block_opener
|
330
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
331
|
+
- foo bar
|
332
|
+
- baz bang
|
333
|
+
- biddle do
|
334
|
+
foo
|
335
|
+
FORTITUDE
|
336
|
+
<% foo bar
|
337
|
+
baz bang
|
338
|
+
biddle do %>
|
339
|
+
foo
|
340
|
+
<% end %>
|
341
|
+
ERB
|
342
|
+
end
|
343
|
+
|
344
|
+
def test_if_elsif_else_parsing
|
345
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
346
|
+
- if foo
|
347
|
+
%p bar
|
348
|
+
- elsif bar.foo("zip")
|
349
|
+
#bang baz
|
350
|
+
- else
|
351
|
+
%strong bibble
|
352
|
+
FORTITUDE
|
353
|
+
<% if foo %>
|
354
|
+
<p>bar</p>
|
355
|
+
<% elsif bar.foo("zip") %>
|
356
|
+
<div id="bang">baz</div>
|
357
|
+
<% else %>
|
358
|
+
<strong>bibble</strong>
|
359
|
+
<% end %>
|
360
|
+
ERB
|
361
|
+
end
|
362
|
+
|
363
|
+
def test_case_when_parsing
|
364
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
365
|
+
- case foo.bar
|
366
|
+
- when "bip"
|
367
|
+
%p bip
|
368
|
+
- when "bop"
|
369
|
+
%p BOP
|
370
|
+
- when bizzle.bang.boop.blip
|
371
|
+
%em BIZZLE BANG BOOP BLIP
|
372
|
+
FORTITUDE
|
373
|
+
<% case foo.bar %>
|
374
|
+
<% when "bip" %>
|
375
|
+
<p>bip</p>
|
376
|
+
<% when "bop" %>
|
377
|
+
<p>BOP</p>
|
378
|
+
<% when bizzle.bang.boop.blip %>
|
379
|
+
<em>BIZZLE BANG BOOP BLIP</em>
|
380
|
+
<% end %>
|
381
|
+
ERB
|
382
|
+
|
383
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
384
|
+
- case foo.bar
|
385
|
+
- when "bip"
|
386
|
+
%p bip
|
387
|
+
- when "bop"
|
388
|
+
%p BOP
|
389
|
+
- when bizzle.bang.boop.blip
|
390
|
+
%em BIZZLE BANG BOOP BLIP
|
391
|
+
FORTITUDE
|
392
|
+
<% case foo.bar
|
393
|
+
when "bip" %>
|
394
|
+
<p>bip</p>
|
395
|
+
<% when "bop" %>
|
396
|
+
<p>BOP</p>
|
397
|
+
<% when bizzle.bang.boop.blip %>
|
398
|
+
<em>BIZZLE BANG BOOP BLIP</em>
|
399
|
+
<% end %>
|
400
|
+
ERB
|
401
|
+
end
|
402
|
+
|
403
|
+
def test_begin_rescue_ensure
|
404
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
405
|
+
- begin
|
406
|
+
%p a
|
407
|
+
- rescue FooException => e
|
408
|
+
%p b
|
409
|
+
- ensure
|
410
|
+
%p c
|
411
|
+
FORTITUDE
|
412
|
+
<% begin %>
|
413
|
+
<p>a</p>
|
414
|
+
<% rescue FooException => e %>
|
415
|
+
<p>b</p>
|
416
|
+
<% ensure %>
|
417
|
+
<p>c</p>
|
418
|
+
<% end %>
|
419
|
+
ERB
|
420
|
+
end
|
421
|
+
|
422
|
+
# Regression
|
423
|
+
|
424
|
+
def test_tag_inside_block
|
425
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
426
|
+
%table
|
427
|
+
- foo.each do
|
428
|
+
%tr
|
429
|
+
FORTITUDE
|
430
|
+
<table>
|
431
|
+
<% foo.each do %>
|
432
|
+
<tr></tr>
|
433
|
+
<% end %>
|
434
|
+
</table>
|
435
|
+
ERB
|
436
|
+
end
|
437
|
+
|
438
|
+
def test_silent_inside_block_inside_tag
|
439
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
440
|
+
%table
|
441
|
+
- foo.each do
|
442
|
+
- fortitude_puts "foo"
|
443
|
+
FORTITUDE
|
444
|
+
<table>
|
445
|
+
<% foo.each do %>
|
446
|
+
<% fortitude_puts "foo" %>
|
447
|
+
<% end %>
|
448
|
+
</table>
|
449
|
+
ERB
|
450
|
+
end
|
451
|
+
|
452
|
+
def test_commented_erb_should_not_cause_indentation
|
453
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
454
|
+
%title
|
455
|
+
html2fortitude and multiline titles
|
456
|
+
= # stylesheet_link_tag :first
|
457
|
+
= stylesheet_link_tag 'another file'
|
458
|
+
FORTITUDE
|
459
|
+
<title>
|
460
|
+
html2fortitude and multiline titles
|
461
|
+
</title>
|
462
|
+
<%=# stylesheet_link_tag :first %>
|
463
|
+
<%#= stylesheet_link_tag :second %>
|
464
|
+
<%# stylesheet_link_tag :third %>
|
465
|
+
<%= stylesheet_link_tag 'another file' %>
|
466
|
+
ERB
|
467
|
+
end
|
468
|
+
|
469
|
+
def test_can_parse_ruby_19_hashes_as_arguments
|
470
|
+
erb = "<%= foobar 'foo', {bar: 'baz'} %>"
|
471
|
+
begin
|
472
|
+
Html2fortitude::HTML::ERB.new(erb)
|
473
|
+
rescue
|
474
|
+
flunk "should not raise an error"
|
475
|
+
end
|
476
|
+
end
|
477
|
+
|
478
|
+
def test_should_wrap_in_silent
|
479
|
+
assert_equal(<<HTML.rstrip, Html2fortitude::HTML::ERB.new(<<ERB).src)
|
480
|
+
<fortitude_silent> some_variable_or_function \n</fortitude_silent>
|
481
|
+
HTML
|
482
|
+
<% some_variable_or_function %>
|
483
|
+
ERB
|
484
|
+
end
|
485
|
+
|
486
|
+
#comment content is removed by erubis
|
487
|
+
def test_should_wrap_process_comments_as_empty_lines
|
488
|
+
assert_equal(<<HTML.rstrip, Html2fortitude::HTML::ERB.new(<<ERB).src)
|
489
|
+
<fortitude_silent>\n</fortitude_silent>
|
490
|
+
HTML
|
491
|
+
<%# some_variable_or_function %>
|
492
|
+
ERB
|
493
|
+
end
|
494
|
+
|
495
|
+
def test_conditional_structure_in_argument
|
496
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<HTML))
|
497
|
+
%span{:class => "\#{"active" if condition}"}
|
498
|
+
FORTITUDE
|
499
|
+
<span class="<%= "active" if condition %>"></span>
|
500
|
+
HTML
|
501
|
+
end
|
502
|
+
|
503
|
+
def test_method_call_without_brackets_in_argument
|
504
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<HTML))
|
505
|
+
%span{:class => "\#{call_me maybe}"}
|
506
|
+
FORTITUDE
|
507
|
+
<span class="<%= call_me maybe %>"></span>
|
508
|
+
HTML
|
509
|
+
end
|
510
|
+
|
511
|
+
def test_multiline_erb_comment
|
512
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
513
|
+
- # comment
|
514
|
+
%p hi
|
515
|
+
FORTITUDE
|
516
|
+
<%
|
517
|
+
# comment
|
518
|
+
-%>
|
519
|
+
<p>hi</p>
|
520
|
+
ERB
|
521
|
+
end
|
522
|
+
|
523
|
+
##
|
524
|
+
# <%== %> is supposed to be equal to <%= raw %>
|
525
|
+
def test_erb_with_double_equals
|
526
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
527
|
+
!= link_to "https://github.com/haml/html2haml/issues/44"
|
528
|
+
FORTITUDE
|
529
|
+
<%== link_to "https://github.com/haml/html2haml/issues/44" %>
|
530
|
+
ERB
|
531
|
+
end
|
532
|
+
|
533
|
+
#https://github.com/haml/html2haml/issues/43
|
534
|
+
def test_escaped_ruby_call_when_preceeded_by_text
|
535
|
+
assert_equal(<<FORTITUDE.rstrip, render_erb(<<ERB))
|
536
|
+
random text
|
537
|
+
= form_tag(url: sessions_path) do
|
538
|
+
= submit_tag "cdcd"
|
539
|
+
FORTITUDE
|
540
|
+
random text
|
541
|
+
<%= form_tag(url: sessions_path) do %>
|
542
|
+
<%= submit_tag "cdcd" %>
|
543
|
+
<% end %>
|
544
|
+
ERB
|
545
|
+
end
|
546
|
+
end
|