middleman 2.0.7 → 2.0.8

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 (190) hide show
  1. data/.gitignore +1 -0
  2. data/.travis.yml +0 -1
  3. data/CHANGELOG +8 -0
  4. data/Gemfile +1 -1
  5. data/features/data.feature +6 -1
  6. data/features/markdown.feature +7 -0
  7. data/features/sprockets.feature +11 -1
  8. data/features/sprockets_gems.feature +3 -3
  9. data/fixtures/sprockets-app/source/jquery_include.js +1 -0
  10. data/fixtures/test-app/config.rb +2 -0
  11. data/fixtures/test-app/source/data2.html.liquid +1 -0
  12. data/fixtures/test-app/source/javascripts/multiple_engines.js.coffee.erb +1 -0
  13. data/fixtures/test-app/source/markdown.html.markdown +1 -0
  14. data/lib/middleman.rb +0 -6
  15. data/lib/middleman/base.rb +6 -1
  16. data/lib/middleman/builder.rb +6 -4
  17. data/lib/middleman/core_extensions/data.rb +35 -5
  18. data/lib/middleman/core_extensions/front_matter.rb +9 -2
  19. data/lib/middleman/core_extensions/sprockets.rb +25 -1
  20. data/lib/middleman/renderers/markdown.rb +25 -2
  21. data/lib/middleman/version.rb +1 -1
  22. data/middleman.gemspec +7 -6
  23. metadata +112 -251
  24. data/lib/middleman/vendor/padrino-core-0.10.0/.document +0 -5
  25. data/lib/middleman/vendor/padrino-core-0.10.0/.gitignore +0 -22
  26. data/lib/middleman/vendor/padrino-core-0.10.0/LICENSE +0 -20
  27. data/lib/middleman/vendor/padrino-core-0.10.0/README.rdoc +0 -294
  28. data/lib/middleman/vendor/padrino-core-0.10.0/Rakefile +0 -5
  29. data/lib/middleman/vendor/padrino-core-0.10.0/bin/padrino +0 -9
  30. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core.rb +0 -119
  31. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/application.rb +0 -259
  32. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/application/rendering.rb +0 -228
  33. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/application/routing.rb +0 -821
  34. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/application/showexceptions.rb +0 -18
  35. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/caller.rb +0 -45
  36. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/adapter.rb +0 -24
  37. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/base.rb +0 -152
  38. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/console.rb +0 -20
  39. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/rake.rb +0 -24
  40. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/rake_tasks.rb +0 -59
  41. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/command.rb +0 -27
  42. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/images/404.png +0 -0
  43. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/images/500.png +0 -0
  44. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/loader.rb +0 -182
  45. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/cz.yml +0 -30
  46. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/da.yml +0 -30
  47. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/de.yml +0 -30
  48. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/en.yml +0 -30
  49. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/es.yml +0 -30
  50. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/fr.yml +0 -30
  51. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/hu.yml +0 -30
  52. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/it.yml +0 -37
  53. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/ja.yml +0 -30
  54. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/nl.yml +0 -30
  55. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/no.yml +0 -31
  56. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/pl.yml +0 -30
  57. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/pt_br.yml +0 -37
  58. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/ru.yml +0 -30
  59. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/tr.yml +0 -30
  60. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/uk.yml +0 -30
  61. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/zh_cn.yml +0 -30
  62. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/zh_tw.yml +0 -30
  63. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/logger.rb +0 -344
  64. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/mounter.rb +0 -192
  65. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/reloader.rb +0 -247
  66. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/router.rb +0 -79
  67. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/server.rb +0 -70
  68. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/support_lite.rb +0 -135
  69. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/tasks.rb +0 -23
  70. data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/version.rb +0 -15
  71. data/lib/middleman/vendor/padrino-core-0.10.0/padrino-core.gemspec +0 -38
  72. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/apps/.components +0 -6
  73. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/apps/.gitignore +0 -7
  74. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/apps/complex.rb +0 -27
  75. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/apps/simple.rb +0 -33
  76. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/a.rb +0 -9
  77. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/b.rb +0 -4
  78. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/c.rb +0 -1
  79. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/circular/e.rb +0 -13
  80. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/circular/f.rb +0 -2
  81. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/circular/g.rb +0 -2
  82. data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/d.rb +0 -4
  83. data/lib/middleman/vendor/padrino-core-0.10.0/test/helper.rb +0 -101
  84. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_application.rb +0 -83
  85. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_core.rb +0 -79
  86. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_dependencies.rb +0 -44
  87. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_filters.rb +0 -266
  88. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_logger.rb +0 -91
  89. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_mounter.rb +0 -176
  90. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_reloader_complex.rb +0 -66
  91. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_reloader_simple.rb +0 -97
  92. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_rendering.rb +0 -437
  93. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_router.rb +0 -146
  94. data/lib/middleman/vendor/padrino-core-0.10.0/test/test_routing.rb +0 -1491
  95. data/lib/middleman/vendor/padrino-helpers-0.10.0/.document +0 -5
  96. data/lib/middleman/vendor/padrino-helpers-0.10.0/.gitignore +0 -21
  97. data/lib/middleman/vendor/padrino-helpers-0.10.0/LICENSE +0 -20
  98. data/lib/middleman/vendor/padrino-helpers-0.10.0/README.rdoc +0 -239
  99. data/lib/middleman/vendor/padrino-helpers-0.10.0/Rakefile +0 -5
  100. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers.rb +0 -51
  101. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/asset_tag_helpers.rb +0 -288
  102. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/form_builder/abstract_form_builder.rb +0 -220
  103. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/form_builder/standard_form_builder.rb +0 -43
  104. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/form_helpers.rb +0 -446
  105. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/format_helpers.rb +0 -260
  106. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/cz.yml +0 -103
  107. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/da.yml +0 -91
  108. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/de.yml +0 -78
  109. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/en.yml +0 -103
  110. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/es.yml +0 -103
  111. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/fr.yml +0 -79
  112. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/hu.yml +0 -103
  113. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/it.yml +0 -85
  114. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/ja.yml +0 -103
  115. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/nl.yml +0 -78
  116. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/no.yml +0 -91
  117. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/pl.yml +0 -95
  118. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/pt_br.yml +0 -103
  119. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/ru.yml +0 -103
  120. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/tr.yml +0 -103
  121. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/uk.yml +0 -103
  122. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/zh_cn.yml +0 -103
  123. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/zh_tw.yml +0 -103
  124. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/number_helpers.rb +0 -273
  125. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers.rb +0 -128
  126. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/abstract_handler.rb +0 -103
  127. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/erb_handler.rb +0 -79
  128. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/haml_handler.rb +0 -64
  129. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/slim_handler.rb +0 -82
  130. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/render_helpers.rb +0 -40
  131. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/tag_helpers.rb +0 -59
  132. data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/translation_helpers.rb +0 -21
  133. data/lib/middleman/vendor/padrino-helpers-0.10.0/padrino-helpers.gemspec +0 -27
  134. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/app.rb +0 -73
  135. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/capture_concat.erb +0 -14
  136. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/capture_concat.haml +0 -12
  137. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/capture_concat.slim +0 -13
  138. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_for.erb +0 -11
  139. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_for.haml +0 -9
  140. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_for.slim +0 -9
  141. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_tag.erb +0 -11
  142. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_tag.haml +0 -9
  143. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_tag.slim +0 -9
  144. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/current_engine.erb +0 -5
  145. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/current_engine.haml +0 -5
  146. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/current_engine.slim +0 -5
  147. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/fields_for.erb +0 -20
  148. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/fields_for.haml +0 -15
  149. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/fields_for.slim +0 -15
  150. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_for.erb +0 -56
  151. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_for.haml +0 -47
  152. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_for.slim +0 -47
  153. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_tag.erb +0 -56
  154. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_tag.haml +0 -45
  155. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_tag.slim +0 -45
  156. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/link_to.erb +0 -5
  157. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/link_to.haml +0 -4
  158. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/link_to.slim +0 -4
  159. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/mail_to.erb +0 -3
  160. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/mail_to.haml +0 -3
  161. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/mail_to.slim +0 -3
  162. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/meta_tag.erb +0 -3
  163. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/meta_tag.haml +0 -3
  164. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/meta_tag.slim +0 -3
  165. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/partials/_erb.erb +0 -1
  166. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/partials/_haml.haml +0 -1
  167. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/partials/_slim.slim +0 -1
  168. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/simple_partial.erb +0 -1
  169. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/simple_partial.haml +0 -1
  170. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/simple_partial.slim +0 -1
  171. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/app.rb +0 -45
  172. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/current_engine.haml +0 -5
  173. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/current_engines/_erb.erb +0 -1
  174. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/current_engines/_haml.haml +0 -1
  175. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/current_engines/_slim.slim +0 -1
  176. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/erb/test.erb +0 -1
  177. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/explicit_engine.haml +0 -5
  178. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/haml/test.haml +0 -1
  179. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/template/_user.haml +0 -7
  180. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/template/haml_template.haml +0 -1
  181. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/template/some_template.haml +0 -2
  182. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/helper.rb +0 -78
  183. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_asset_tag_helpers.rb +0 -320
  184. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_form_builder.rb +0 -998
  185. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_form_helpers.rb +0 -645
  186. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_format_helpers.rb +0 -227
  187. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_number_helpers.rb +0 -136
  188. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_output_helpers.rb +0 -133
  189. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_render_helpers.rb +0 -69
  190. data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_tag_helpers.rb +0 -100
@@ -1,45 +0,0 @@
1
- - form_tag '/simple', :class => 'simple-form' do
2
- = error_messages_for nil
3
- - field_set_tag do
4
- = hidden_field_tag :session_id, :value => "__secret__"
5
- = label_tag :username
6
- = text_field_tag :username
7
- = label_tag :password
8
- = password_field_tag :password
9
- = label_tag :color
10
- = select_tag :color, :options => ['green', 'orange', 'purple']
11
- = label_tag :gender
12
- = radio_button_tag :gender, :value => 'male'
13
- = radio_button_tag :gender, :value => 'female'
14
- = check_box_tag :remember_me
15
- = submit_tag
16
-
17
- - form_tag '/advanced', :id => 'advanced', :class => 'advanced-form', :method => 'get' do
18
- = error_messages_for MarkupUser.new, :header_message => "There are problems with saving user!"
19
- = hidden_field_tag :session_id, :value => "__secret__"
20
- - field_set_tag "Advanced", :class => 'advanced-field-set' do
21
- %p
22
- = label_tag :username, :class => 'first', :caption => "Nickname"
23
- = text_field_tag :username, :value => params[:username], :id => 'the_username'
24
- %p
25
- = label_tag :password, :class => 'first'
26
- = password_field_tag :password, :value => params[:password]
27
- %p
28
- = label_tag :about, :class => 'about', :caption => "About Me"
29
- = text_area_tag :about, :class => 'large'
30
- %p
31
- = label_tag :gender, :class => 'gender'
32
- = radio_button_tag :gender, :value => 'male', :checked => true
33
- = radio_button_tag :gender, :value => 'female'
34
- %p
35
- = label_tag :photo, :class => 'photo'
36
- = file_field_tag :photo, :class => 'upload'
37
- %p
38
- = label_tag :fav_color
39
- = select_tag :fav_color, :options => [ ['green', '1'], ['orange', '2'], ['purple', '3'] ], :selected => '2'
40
- %p
41
- = check_box_tag :remember_me, :value => "1", :checked => true
42
- - field_set_tag(:class => 'buttons') do
43
- = submit_tag "Login"
44
- = button_tag "Cancel"
45
- = image_submit_tag "buttons/submit.png"
@@ -1,45 +0,0 @@
1
- == form_tag '/simple', :class => 'simple-form' do
2
- == error_messages_for nil
3
- == field_set_tag do
4
- == hidden_field_tag :session_id, :value => "__secret__"
5
- == label_tag :username
6
- == text_field_tag :username
7
- == label_tag :password
8
- == password_field_tag :password
9
- == label_tag :color
10
- == select_tag :color, :options => ['green', 'orange', 'purple']
11
- == label_tag :gender
12
- == radio_button_tag :gender, :value => 'male'
13
- == radio_button_tag :gender, :value => 'female'
14
- == check_box_tag :remember_me
15
- == submit_tag
16
-
17
- == form_tag '/advanced', :id => 'advanced', :class => 'advanced-form', :method => 'get' do
18
- == error_messages_for MarkupUser.new, :header_message => "There are problems with saving user!"
19
- == hidden_field_tag :session_id, :value => "__secret__"
20
- == field_set_tag "Advanced", :class => 'advanced-field-set' do
21
- p
22
- == label_tag :username, :class => 'first', :caption => "Nickname"
23
- == text_field_tag :username, :value => params[:username], :id => 'the_username'
24
- p
25
- == label_tag :password, :class => 'first'
26
- == password_field_tag :password, :value => params[:password]
27
- p
28
- == label_tag :about, :class => 'about', :caption => "About Me"
29
- == text_area_tag :about, :class => 'large'
30
- p
31
- == label_tag :gender, :class => 'gender'
32
- == radio_button_tag :gender, :value => 'male', :checked => true
33
- == radio_button_tag :gender, :value => 'female'
34
- p
35
- == label_tag :photo, :class => 'photo'
36
- == file_field_tag :photo, :class => 'upload'
37
- p
38
- == label_tag :fav_color
39
- == select_tag :fav_color, :options => [ ['green', '1'], ['orange', '2'], ['purple', '3'] ], :selected => '2'
40
- p
41
- == check_box_tag :remember_me, :value => "1", :checked => true
42
- == field_set_tag(:class => 'buttons') do
43
- == submit_tag "Login"
44
- == button_tag "Cancel"
45
- == image_submit_tag "buttons/submit.png"
@@ -1,5 +0,0 @@
1
- <%= link_to "Test 1 No Block", '/test1', :class => 'test', :id => 'test1' %>
2
-
3
- <% link_to("/test2", :class => 'test', :id => 'test2') do %>
4
- <span>Test 2 With Block</span>
5
- <% end %>
@@ -1,4 +0,0 @@
1
- = link_to "Test 1 No Block", '/test1', :class => 'test', :id => 'test1'
2
-
3
- - link_to("/test2", :class => 'test', :id => 'test2') do
4
- %span Test 2 With Block
@@ -1,4 +0,0 @@
1
- = link_to "Test 1 No Block", '/test1', :class => 'test', :id => 'test1'
2
-
3
- - link_to("/test2", :class => 'test', :id => 'test2') do
4
- span Test 2 With Block
@@ -1,3 +0,0 @@
1
- <p class='simple'><%= mail_to 'test@demo.com' %></p>
2
-
3
- <p class='captioned'><%= mail_to 'test@demo.com', "Click my Email" %></p>
@@ -1,3 +0,0 @@
1
- %p.simple= mail_to 'test@demo.com'
2
-
3
- %p.captioned= mail_to 'test@demo.com', "Click my Email"
@@ -1,3 +0,0 @@
1
- p.simple== mail_to 'test@demo.com'
2
-
3
- p.captioned== mail_to 'test@demo.com', "Click my Email"
@@ -1,3 +0,0 @@
1
- <%= meta_tag "weblog,news", :name => "keywords" %>
2
-
3
- <%= meta_tag "text/html; charset=UTF-8", :"http-equiv" => "Content-Type" %>
@@ -1,3 +0,0 @@
1
- = meta_tag "weblog,news", :name => "keywords"
2
-
3
- = meta_tag "text/html; charset=UTF-8", :"http-equiv" => "Content-Type"
@@ -1,3 +0,0 @@
1
- == meta_tag "weblog,news", :name => "keywords"
2
-
3
- == meta_tag "text/html; charset=UTF-8", :"http-equiv" => "Content-Type"
@@ -1 +0,0 @@
1
- <p class="erb"><%= partial 'partials/erb', :engine => "erb" %></p>
@@ -1 +0,0 @@
1
- %p.haml= partial 'partials/haml', :engine => "haml"
@@ -1 +0,0 @@
1
- p.slim= partial 'partials/slim', :engine => "slim"
@@ -1,45 +0,0 @@
1
- PADRINO_ROOT = File.dirname(__FILE__) unless defined? PADRINO_ROOT
2
- PADRINO_ENV = 'test' unless defined? PADRINO_ENV
3
-
4
- require 'padrino-core'
5
- require 'slim'
6
-
7
- class RenderUser
8
- attr_accessor :name
9
- def initialize(name); @name = name; end
10
- end
11
-
12
- class RenderDemo < Padrino::Application
13
- register Padrino::Rendering
14
- register Padrino::Helpers
15
-
16
- configure do
17
- set :logging, false
18
- set :padrino_logging, false
19
- end
20
-
21
- # get current engines from partials
22
- get '/current_engine' do
23
- render :current_engine
24
- end
25
-
26
- # get current engines from explicit engine partials
27
- get '/explicit_engine' do
28
- render :explicit_engine
29
- end
30
-
31
- # partial with object
32
- get '/partial/object' do
33
- partial 'template/user', :object => RenderUser.new('John'), :locals => { :extra => "bar" }
34
- end
35
-
36
- # partial with collection
37
- get '/partial/collection' do
38
- partial 'template/user', :collection => [RenderUser.new('John'), RenderUser.new('Billy')], :locals => { :extra => "bar" }
39
- end
40
-
41
- # partial with locals
42
- get '/partial/locals' do
43
- partial 'template/user', :locals => { :user => RenderUser.new('John'), :extra => "bar" }
44
- end
45
- end
@@ -1,5 +0,0 @@
1
- %p.start= current_engine
2
- %p.haml= partial 'current_engines/haml'
3
- %p.erb= partial 'current_engines/erb'
4
- %p.slim= partial 'current_engines/slim'
5
- %p.end= current_engine
@@ -1 +0,0 @@
1
- <h1>This is a <%= @template %> template!</h1>
@@ -1,5 +0,0 @@
1
- %p.start= current_engine
2
- %p.haml= partial "current_engines/haml", :engine => :haml
3
- %p.erb= partial 'current_engines/erb', :engine => :erb
4
- %p.slim= partial 'current_engines/slim', :engine => :slim
5
- %p.end= current_engine
@@ -1,7 +0,0 @@
1
- %h1 User name is #{user.name}
2
-
3
- - if defined?(extra)
4
- %p Extra is #{extra}
5
-
6
- - if defined?(user_counter)
7
- %p My counter is #{user_counter}
@@ -1 +0,0 @@
1
- %h1 This is a #{@template} template sent from render_template!
@@ -1,2 +0,0 @@
1
-
2
- %h1 This is a haml template which was detected!
@@ -1,78 +0,0 @@
1
- require File.expand_path('../../../load_paths', __FILE__)
2
- require 'test/unit'
3
- require 'shoulda'
4
- require 'mocha'
5
- require 'rack/test'
6
- require 'webrat'
7
- require 'padrino-helpers'
8
- require 'active_support/time'
9
-
10
- class Test::Unit::TestCase
11
- include Padrino::Helpers::OutputHelpers
12
- include Padrino::Helpers::TagHelpers
13
- include Padrino::Helpers::AssetTagHelpers
14
- include Rack::Test::Methods
15
- include Webrat::Methods
16
- include Webrat::Matchers
17
-
18
- Webrat.configure do |config|
19
- config.mode = :rack
20
- end
21
-
22
- def stop_time_for_test
23
- time = Time.now
24
- Time.stubs(:now).returns(time)
25
- return time
26
- end
27
-
28
- # assert_has_tag(:h1, :content => "yellow") { "<h1>yellow</h1>" }
29
- # In this case, block is the html to evaluate
30
- def assert_has_tag(name, attributes = {}, &block)
31
- html = block && block.call
32
- matcher = HaveSelector.new(name, attributes)
33
- raise "Please specify a block!" if html.blank?
34
- assert matcher.matches?(html), matcher.failure_message
35
- end
36
-
37
- # assert_has_no_tag, tag(:h1, :content => "yellow") { "<h1>green</h1>" }
38
- # In this case, block is the html to evaluate
39
- def assert_has_no_tag(name, attributes = {}, &block)
40
- html = block && block.call
41
- attributes.merge!(:count => 0)
42
- matcher = HaveSelector.new(name, attributes)
43
- raise "Please specify a block!" if html.blank?
44
- assert matcher.matches?(html), matcher.failure_message
45
- end
46
-
47
- # Silences the output by redirecting to stringIO
48
- # silence_logger { ...commands... } => "...output..."
49
- def silence_logger(&block)
50
- orig_stdout = $stdout
51
- $stdout = log_buffer = StringIO.new
52
- block.call
53
- $stdout = orig_stdout
54
- log_buffer.rewind && log_buffer.read
55
- end
56
-
57
- # Asserts that a file matches the pattern
58
- def assert_match_in_file(pattern, file)
59
- assert File.exist?(file), "File '#{file}' does not exist!"
60
- assert_match pattern, File.read(file)
61
- end
62
-
63
- # mock_model("Business", :new_record? => true) => <Business>
64
- def mock_model(klazz, options={})
65
- options.reverse_merge!(:class => klazz, :new_record? => false, :id => 20, :errors => {})
66
- record = stub(options)
67
- record.stubs(:to_ary => [record])
68
- record
69
- end
70
- end
71
-
72
- module Webrat
73
- module Logging
74
- def logger # :nodoc:
75
- @logger = nil
76
- end
77
- end
78
- end
@@ -1,320 +0,0 @@
1
- require File.expand_path(File.dirname(__FILE__) + '/helper')
2
- require File.expand_path(File.dirname(__FILE__) + '/fixtures/markup_app/app')
3
-
4
- class TestAssetTagHelpers < Test::Unit::TestCase
5
- include Padrino::Helpers::AssetTagHelpers
6
-
7
- def app
8
- MarkupDemo.tap { |app| app.set :environment, :test }
9
- end
10
-
11
- def flash
12
- { :notice => "Demo notice" }
13
- end
14
-
15
- context 'for #flash_tag method' do
16
- should "display flash with no given attributes" do
17
- assert_has_tag('div.notice', :content => "Demo notice") { flash_tag(:notice) }
18
- end
19
- should "display flash with given attributes" do
20
- actual_html = flash_tag(:notice, :class => 'notice', :id => 'notice-area')
21
- assert_has_tag('div.notice#notice-area', :content => "Demo notice") { actual_html }
22
- end
23
- end
24
-
25
- context 'for #link_to method' do
26
- should "display link element with no given attributes" do
27
- assert_has_tag('a', :content => "Sign up", :href => '/register') { link_to('Sign up', '/register') }
28
- end
29
-
30
- should "display link element with given attributes" do
31
- actual_html = link_to('Sign up', '/register', :class => 'first', :id => 'linky')
32
- assert_has_tag('a#linky.first', :content => "Sign up", :href => '/register') { actual_html }
33
- end
34
-
35
- should "display link element with anchor attribute" do
36
- actual_html = link_to("Anchor", "/anchor", :anchor => :foo)
37
- assert_has_tag('a', :content => "Anchor", :href => '/anchor#foo') { actual_html }
38
- end
39
-
40
- should "display link element with void url and options" do
41
- actual_link = link_to('Sign up', :class => "test")
42
- assert_has_tag('a', :content => "Sign up", :href => 'javascript:void(0);', :class => 'test') { actual_link }
43
- end
44
-
45
- should "display link element with remote option" do
46
- actual_link = link_to('Sign up', '/register', :remote => true)
47
- assert_has_tag('a', :content => "Sign up", :href => '/register', 'data-remote' => 'true') { actual_link }
48
- end
49
-
50
- should "display link element with method option" do
51
- actual_link = link_to('Sign up', '/register', :method => :delete)
52
- assert_has_tag('a', :content => "Sign up", :href => '/register', 'data-method' => 'delete', :rel => 'nofollow') { actual_link }
53
- end
54
-
55
- should "display link element with confirm option" do
56
- actual_link = link_to('Sign up', '/register', :confirm => "Are you sure?")
57
- assert_has_tag('a', :content => "Sign up", :href => '/register', 'data-confirm' => 'Are you sure?') { actual_link }
58
- end
59
-
60
- should "display link element with ruby block" do
61
- actual_link = link_to('/register', :class => 'first', :id => 'binky') { "Sign up" }
62
- assert_has_tag('a#binky.first', :content => "Sign up", :href => '/register') { actual_link }
63
- end
64
-
65
- should "display link block element in haml" do
66
- visit '/haml/link_to'
67
- assert_have_selector :a, :content => "Test 1 No Block", :href => '/test1', :class => 'test', :id => 'test1'
68
- assert_have_selector :a, :content => "Test 2 With Block", :href => '/test2', :class => 'test', :id => 'test2'
69
- end
70
-
71
- should "display link block element in erb" do
72
- visit '/erb/link_to'
73
- assert_have_selector :a, :content => "Test 1 No Block", :href => '/test1', :class => 'test', :id => 'test1'
74
- assert_have_selector :a, :content => "Test 2 With Block", :href => '/test2', :class => 'test', :id => 'test2'
75
- end
76
- end
77
-
78
- context 'for #mail_to method' do
79
- should "display link element for mail to no caption" do
80
- actual_html = mail_to('test@demo.com')
81
- assert_has_tag(:a, :href => "mailto:test@demo.com", :content => 'test@demo.com') { actual_html }
82
- end
83
-
84
- should "display link element for mail to with caption" do
85
- actual_html = mail_to('test@demo.com', "My Email", :class => 'demo')
86
- assert_has_tag(:a, :href => "mailto:test@demo.com", :content => 'My Email', :class => 'demo') { actual_html }
87
- end
88
-
89
- should "display link element for mail to with caption and mail options" do
90
- actual_html = mail_to('test@demo.com', "My Email", :subject => 'demo test', :class => 'demo', :cc => 'foo@test.com')
91
- assert_has_tag(:a, :class => 'demo') { actual_html }
92
- assert_match %r{mailto\:test\@demo.com\?}, actual_html
93
- assert_match %r{cc=foo\@test\.com}, actual_html
94
- assert_match %r{subject\=demo\%20test}, actual_html
95
- end
96
-
97
- should "display mail link element in haml" do
98
- visit '/haml/mail_to'
99
- assert_have_selector 'p.simple a', :href => 'mailto:test@demo.com', :content => 'test@demo.com'
100
- assert_have_selector 'p.captioned a', :href => 'mailto:test@demo.com', :content => 'Click my Email'
101
- end
102
-
103
- should "display mail link element in erb" do
104
- visit '/erb/mail_to'
105
- assert_have_selector 'p.simple a', :href => 'mailto:test@demo.com', :content => 'test@demo.com'
106
- assert_have_selector 'p.captioned a', :href => 'mailto:test@demo.com', :content => 'Click my Email'
107
- end
108
-
109
- should "display mail link element in slim" do
110
- visit '/slim/mail_to'
111
- assert_have_selector 'p.simple a', :href => 'mailto:test@demo.com', :content => 'test@demo.com'
112
- assert_have_selector 'p.captioned a', :href => 'mailto:test@demo.com', :content => 'Click my Email'
113
- end
114
- end
115
-
116
- context 'for #meta_tag method' do
117
- should "display meta tag with given content and name" do
118
- actual_html = meta_tag("weblog,news", :name => "keywords")
119
- assert_has_tag("meta", :name => "keywords", "content" => "weblog,news") { actual_html }
120
- end
121
-
122
- should "display meta tag with given content and http-equiv" do
123
- actual_html = meta_tag("text/html; charset=UTF-8", :"http-equiv" => "Content-Type")
124
- assert_has_tag("meta", :"http-equiv" => "Content-Type", "content" => "text/html; charset=UTF-8") { actual_html }
125
- end
126
-
127
- should "display meta tag element in haml" do
128
- visit '/haml/meta_tag'
129
- assert_have_selector 'meta', "content" => "weblog,news", :name => "keywords"
130
- assert_have_selector 'meta', "content" => "text/html; charset=UTF-8", :"http-equiv" => "Content-Type"
131
- end
132
-
133
- should "display meta tag element in erb" do
134
- visit '/erb/meta_tag'
135
- assert_have_selector 'meta', "content" => "weblog,news", :name => "keywords"
136
- assert_have_selector 'meta', "content" => "text/html; charset=UTF-8", :"http-equiv" => "Content-Type"
137
- end
138
-
139
- should "display meta tag element in slim" do
140
- visit '/slim/meta_tag'
141
- assert_have_selector 'meta', "content" => "weblog,news", :name => "keywords"
142
- assert_have_selector 'meta', "content" => "text/html; charset=UTF-8", :"http-equiv" => "Content-Type"
143
- end
144
- end
145
-
146
- context 'for #image_tag method' do
147
- should "display image tag absolute link with no options" do
148
- time = stop_time_for_test
149
- assert_has_tag('img', :src => "/absolute/pic.gif?#{time.to_i}") { image_tag('/absolute/pic.gif') }
150
- end
151
-
152
- should "display image tag absolute link with specified uri root" do
153
- time = stop_time_for_test
154
- self.class.stubs(:uri_root).returns("/blog")
155
- assert_has_tag('img', :src => "/blog/images/relative/pic.gif?#{time.to_i}") { image_tag('relative/pic.gif') }
156
- end
157
-
158
- should "display image tag relative link with options" do
159
- time = stop_time_for_test
160
- assert_has_tag('img.photo', :src => "/images/relative/pic.gif?#{time.to_i}") {
161
- image_tag('relative/pic.gif', :class => 'photo') }
162
- end
163
-
164
- should "display image tag uri link with options" do
165
- time = stop_time_for_test
166
- assert_has_tag('img.photo', :src => "http://demo.org/pic.gif") { image_tag('http://demo.org/pic.gif', :class => 'photo') }
167
- end
168
-
169
- should "display image tag relative link with incorrect spacing" do
170
- time = stop_time_for_test
171
- assert_has_tag('img.photo', :src => "/images/%20relative/%20pic.gif%20%20?#{time.to_i}") {
172
- image_tag(' relative/ pic.gif ', :class => 'photo') }
173
- end
174
-
175
- should "not use a timestamp if stamp setting is false" do
176
- self.class.expects(:asset_stamp).returns(false)
177
- assert_has_tag('img', :src => "/absolute/pic.gif") { image_tag('/absolute/pic.gif') }
178
- end
179
-
180
- should "have xhtml convention tag" do
181
- self.class.expects(:asset_stamp).returns(false)
182
- assert_equal image_tag('/absolute/pic.gif'), '<img src="/absolute/pic.gif" />'
183
- end
184
- end
185
-
186
- context 'for #stylesheet_link_tag method' do
187
- should "display stylesheet link item" do
188
- time = stop_time_for_test
189
- expected_options = { :media => "screen", :rel => "stylesheet", :type => "text/css" }
190
- assert_has_tag('link', expected_options.merge(:href => "/stylesheets/style.css?#{time.to_i}")) { stylesheet_link_tag('style') }
191
- end
192
-
193
- should "display stylesheet link item for long relative path" do
194
- time = stop_time_for_test
195
- expected_options = { :media => "screen", :rel => "stylesheet", :type => "text/css" }
196
- actual_html = stylesheet_link_tag('example/demo/style')
197
- assert_has_tag('link', expected_options.merge(:href => "/stylesheets/example/demo/style.css?#{time.to_i}")) { actual_html }
198
- end
199
-
200
- should "display stylesheet link item with absolute path" do
201
- time = stop_time_for_test
202
- expected_options = { :media => "screen", :rel => "stylesheet", :type => "text/css" }
203
- actual_html = stylesheet_link_tag('/css/style')
204
- assert_has_tag('link', expected_options.merge(:href => "/css/style.css?#{time.to_i}")) { actual_html }
205
- end
206
-
207
- should "display stylesheet link item with uri root" do
208
- self.class.stubs(:uri_root).returns("/blog")
209
- time = stop_time_for_test
210
- expected_options = { :media => "screen", :rel => "stylesheet", :type => "text/css" }
211
- actual_html = stylesheet_link_tag('style')
212
- assert_has_tag('link', expected_options.merge(:href => "/blog/stylesheets/style.css?#{time.to_i}")) { actual_html }
213
- end
214
-
215
- should "display stylesheet link items" do
216
- time = stop_time_for_test
217
- actual_html = stylesheet_link_tag('style', 'layout.css', 'http://google.com/style.css')
218
- assert_has_tag('link', :media => "screen", :rel => "stylesheet", :type => "text/css", :count => 3) { actual_html }
219
- assert_has_tag('link', :href => "/stylesheets/style.css?#{time.to_i}") { actual_html }
220
- assert_has_tag('link', :href => "/stylesheets/layout.css?#{time.to_i}") { actual_html }
221
- assert_has_tag('link', :href => "http://google.com/style.css") { actual_html }
222
- assert_equal actual_html, stylesheet_link_tag(['style', 'layout.css', 'http://google.com/style.css'])
223
- end
224
-
225
- should "not use a timestamp if stamp setting is false" do
226
- self.class.expects(:asset_stamp).returns(false)
227
- expected_options = { :media => "screen", :rel => "stylesheet", :type => "text/css" }
228
- assert_has_tag('link', expected_options.merge(:href => "/stylesheets/style.css")) { stylesheet_link_tag('style') }
229
- end
230
- end
231
-
232
- context 'for #javascript_include_tag method' do
233
- should "display javascript item" do
234
- time = stop_time_for_test
235
- actual_html = javascript_include_tag('application')
236
- assert_has_tag('script', :src => "/javascripts/application.js?#{time.to_i}", :type => "text/javascript") { actual_html }
237
- end
238
-
239
- should "display javascript item for long relative path" do
240
- time = stop_time_for_test
241
- actual_html = javascript_include_tag('example/demo/application')
242
- assert_has_tag('script', :src => "/javascripts/example/demo/application.js?#{time.to_i}", :type => "text/javascript") { actual_html }
243
- end
244
-
245
- should "display javascript item for path containing js" do
246
- time = stop_time_for_test
247
- actual_html = javascript_include_tag 'test/jquery.json'
248
- assert_has_tag('script', :src => "/javascripts/test/jquery.json?#{time.to_i}", :type => "text/javascript") { actual_html }
249
- end
250
-
251
- should "display javascript item for path containing period" do
252
- time = stop_time_for_test
253
- actual_html = javascript_include_tag 'test/jquery.min'
254
- assert_has_tag('script', :src => "/javascripts/test/jquery.min.js?#{time.to_i}", :type => "text/javascript") { actual_html }
255
- end
256
-
257
- should "display javascript item with absolute path" do
258
- time = stop_time_for_test
259
- actual_html = javascript_include_tag('/js/application')
260
- assert_has_tag('script', :src => "/js/application.js?#{time.to_i}", :type => "text/javascript") { actual_html }
261
- end
262
-
263
- should "display javascript item with uri root" do
264
- self.class.stubs(:uri_root).returns("/blog")
265
- time = stop_time_for_test
266
- actual_html = javascript_include_tag('application')
267
- assert_has_tag('script', :src => "/blog/javascripts/application.js?#{time.to_i}", :type => "text/javascript") { actual_html }
268
- end
269
-
270
- should "display javascript items" do
271
- time = stop_time_for_test
272
- actual_html = javascript_include_tag('application', 'base.js', 'http://google.com/lib.js')
273
- assert_has_tag('script', :type => "text/javascript", :count => 3) { actual_html }
274
- assert_has_tag('script', :src => "/javascripts/application.js?#{time.to_i}") { actual_html }
275
- assert_has_tag('script', :src => "/javascripts/base.js?#{time.to_i}") { actual_html }
276
- assert_has_tag('script', :src => "http://google.com/lib.js") { actual_html }
277
- assert_equal actual_html, javascript_include_tag(['application', 'base.js', 'http://google.com/lib.js'])
278
- end
279
-
280
- should "not use a timestamp if stamp setting is false" do
281
- self.class.expects(:asset_stamp).returns(false)
282
- actual_html = javascript_include_tag('application')
283
- assert_has_tag('script', :src => "/javascripts/application.js", :type => "text/javascript") { actual_html }
284
- end
285
- end
286
-
287
- context "for #favicon_tag method" do
288
- should "display favicon" do
289
- time = stop_time_for_test
290
- actual_html = favicon_tag('icons/favicon.png')
291
- assert_has_tag('link', :rel => 'icon', :type => 'image/png', :href => "/images/icons/favicon.png?#{time.to_i}") { actual_html }
292
- end
293
-
294
- should "match type with file ext" do
295
- time = stop_time_for_test
296
- actual_html = favicon_tag('favicon.ico')
297
- assert_has_tag('link', :rel => 'icon', :type => 'image/ico', :href => "/images/favicon.ico?#{time.to_i}") { actual_html }
298
- end
299
-
300
- should "allow option overrides" do
301
- time = stop_time_for_test
302
- actual_html = favicon_tag('favicon.png', :type => 'image/ico')
303
- assert_has_tag('link', :rel => 'icon', :type => 'image/ico', :href => "/images/favicon.png?#{time.to_i}") { actual_html }
304
- end
305
- end
306
-
307
- context 'for #feed_tag method' do
308
- should "generate correctly link tag for rss" do
309
- assert_has_tag('link', :type => 'application/rss+xml', :rel => 'alternate', :href => "/blog/post.rss", :title => 'rss') { feed_tag :rss, "/blog/post.rss" }
310
- end
311
-
312
- should "generate correctly link tag for atom" do
313
- assert_has_tag('link', :type => 'application/atom+xml', :rel => 'alternate', :href => "/blog/post.atom", :title => 'atom') { feed_tag :atom, "/blog/post.atom" }
314
- end
315
-
316
- should "override options" do
317
- assert_has_tag('link', :type => 'my-type', :rel => 'my-rel', :href => "/blog/post.rss", :title => 'my-title') { feed_tag :rss, "/blog/post.rss", :type => "my-type", :rel => "my-rel", :title => "my-title" }
318
- end
319
- end
320
- end