fortitude 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.
Files changed (332) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +20 -0
  3. data/.rspec-local +4 -0
  4. data/.travis.yml +26 -0
  5. data/Gemfile +5 -0
  6. data/LICENSE.txt +22 -0
  7. data/README-erector.md +246 -0
  8. data/README.md +15 -0
  9. data/Rakefile +67 -0
  10. data/ext/FortitudeJrubyNativeExtService.java +11 -0
  11. data/ext/com/fortituderuby/ext/fortitude/FortitudeNativeLibrary.java +223 -0
  12. data/ext/fortitude_native_ext/extconf.rb +4 -0
  13. data/ext/fortitude_native_ext/fortitude_native_ext.c +333 -0
  14. data/fortitude.gemspec +37 -0
  15. data/lib/fortitude/assign_locals_from_template.rb.smpl +22 -0
  16. data/lib/fortitude/assigns_proxy.rb +75 -0
  17. data/lib/fortitude/class_inheritable_attributes.rb +96 -0
  18. data/lib/fortitude/doctypes/base.rb +38 -0
  19. data/lib/fortitude/doctypes/html4.rb +20 -0
  20. data/lib/fortitude/doctypes/html4_frameset.rb +18 -0
  21. data/lib/fortitude/doctypes/html4_strict.rb +17 -0
  22. data/lib/fortitude/doctypes/html4_tags_frameset.rb +52 -0
  23. data/lib/fortitude/doctypes/html4_tags_strict.rb +273 -0
  24. data/lib/fortitude/doctypes/html4_tags_transitional.rb +114 -0
  25. data/lib/fortitude/doctypes/html4_transitional.rb +18 -0
  26. data/lib/fortitude/doctypes/html5.rb +372 -0
  27. data/lib/fortitude/doctypes/unknown_doctype.rb +19 -0
  28. data/lib/fortitude/doctypes/xhtml10.rb +19 -0
  29. data/lib/fortitude/doctypes/xhtml10_frameset.rb +17 -0
  30. data/lib/fortitude/doctypes/xhtml10_strict.rb +17 -0
  31. data/lib/fortitude/doctypes/xhtml10_transitional.rb +17 -0
  32. data/lib/fortitude/doctypes/xhtml11.rb +29 -0
  33. data/lib/fortitude/doctypes.rb +46 -0
  34. data/lib/fortitude/errors.rb +153 -0
  35. data/lib/fortitude/fortitude_ruby_ext.rb +71 -0
  36. data/lib/fortitude/instance_variable_set.rb +74 -0
  37. data/lib/fortitude/need_assignment_template.rb.smpl +16 -0
  38. data/lib/fortitude/need_method_template.rb.smpl +4 -0
  39. data/lib/fortitude/non_rails_widget_methods.rb +15 -0
  40. data/lib/fortitude/partial_tag_placeholder.rb +17 -0
  41. data/lib/fortitude/rails/helpers.rb +153 -0
  42. data/lib/fortitude/rails/renderer.rb +43 -0
  43. data/lib/fortitude/rails/template_handler.rb +23 -0
  44. data/lib/fortitude/rails/widget_methods.rb +17 -0
  45. data/lib/fortitude/rails/yielded_object_outputter.rb +31 -0
  46. data/lib/fortitude/railtie.rb +254 -0
  47. data/lib/fortitude/rendering_context.rb +205 -0
  48. data/lib/fortitude/simple_template.rb +45 -0
  49. data/lib/fortitude/staticized_method.rb +85 -0
  50. data/lib/fortitude/tag.rb +162 -0
  51. data/lib/fortitude/tag_method_template.rb.smpl +68 -0
  52. data/lib/fortitude/tag_return_value.rb +11 -0
  53. data/lib/fortitude/tag_store.rb +48 -0
  54. data/lib/fortitude/tag_support.rb +48 -0
  55. data/lib/fortitude/tags_module.rb +14 -0
  56. data/lib/fortitude/text_method_template.rb.smpl +17 -0
  57. data/lib/fortitude/tilt/fortitude_template.rb +169 -0
  58. data/lib/fortitude/version.rb +3 -0
  59. data/lib/fortitude/widget.rb +904 -0
  60. data/lib/fortitude/widgets/html4_frameset.rb +9 -0
  61. data/lib/fortitude/widgets/html4_strict.rb +9 -0
  62. data/lib/fortitude/widgets/html4_transitional.rb +9 -0
  63. data/lib/fortitude/widgets/html5.rb +9 -0
  64. data/lib/fortitude/widgets/xhtml10_frameset.rb +9 -0
  65. data/lib/fortitude/widgets/xhtml10_strict.rb +9 -0
  66. data/lib/fortitude/widgets/xhtml10_transitional.rb +9 -0
  67. data/lib/fortitude/widgets/xhtml11.rb +9 -0
  68. data/lib/fortitude.rb +93 -0
  69. data/lib/fortitude_jruby_native_ext.jar +0 -0
  70. data/spec/helpers/global_helper.rb +8 -0
  71. data/spec/helpers/rails_helpers.rb +85 -0
  72. data/spec/helpers/rails_server.rb +386 -0
  73. data/spec/helpers/system_helpers.rb +117 -0
  74. data/spec/rails/basic_rails_system_spec.rb +7 -0
  75. data/spec/rails/capture_system_spec.rb +75 -0
  76. data/spec/rails/class_loading_system_spec.rb +63 -0
  77. data/spec/rails/complex_helpers_system_spec.rb +33 -0
  78. data/spec/rails/data_passing_system_spec.rb +96 -0
  79. data/spec/rails/default_layout_system_spec.rb +15 -0
  80. data/spec/rails/development_mode_system_spec.rb +67 -0
  81. data/spec/rails/erb_integration_system_spec.rb +23 -0
  82. data/spec/rails/helpers_include_all_off_system_spec.rb +7 -0
  83. data/spec/rails/helpers_system_spec.rb +79 -0
  84. data/spec/rails/helpers_unrefined_system_spec.rb +7 -0
  85. data/spec/rails/layouts_system_spec.rb +60 -0
  86. data/spec/rails/localization_system_spec.rb +38 -0
  87. data/spec/rails/production_mode_system_spec.rb +13 -0
  88. data/spec/rails/rendering_context_system_spec.rb +64 -0
  89. data/spec/rails/rendering_system_spec.rb +158 -0
  90. data/spec/rails/rules_system_spec.rb +23 -0
  91. data/spec/rails/static_method_system_spec.rb +12 -0
  92. data/spec/rails/templates/base/app/controllers/application_controller.rb +15 -0
  93. data/spec/rails/templates/base/app/controllers/working_controller.rb +5 -0
  94. data/spec/rails/templates/base/app/views/layouts/application.html.erb +11 -0
  95. data/spec/rails/templates/base/config/routes.rb +4 -0
  96. data/spec/rails/templates/base/config/secrets.yml +22 -0
  97. data/spec/rails/templates/basic_rails_system_spec/app/controllers/basic_rails_system_spec_controller.rb +8 -0
  98. data/spec/rails/templates/basic_rails_system_spec/app/views/basic_rails_system_spec/trivial_widget.rb +5 -0
  99. data/spec/rails/templates/capture_system_spec/app/controllers/capture_system_spec_controller.rb +37 -0
  100. data/spec/rails/templates/capture_system_spec/app/views/capture_system_spec/_some_erb_partial.html.erb +1 -0
  101. data/spec/rails/templates/capture_system_spec/app/views/capture_system_spec/another_widget.rb +7 -0
  102. data/spec/rails/templates/capture_system_spec/app/views/capture_system_spec/capture_erb_from_widget.rb +11 -0
  103. data/spec/rails/templates/capture_system_spec/app/views/capture_system_spec/capture_widget_from_erb.html.erb +9 -0
  104. data/spec/rails/templates/capture_system_spec/app/views/capture_system_spec/capture_widget_from_widget.rb +17 -0
  105. data/spec/rails/templates/capture_system_spec/app/views/capture_system_spec/some_widget.rb +5 -0
  106. data/spec/rails/templates/capture_system_spec/app/views/capture_system_spec/widget_content_for.rb +19 -0
  107. data/spec/rails/templates/capture_system_spec/app/views/capture_system_spec/widget_layout_needing_content_yield_with_erb.html.erb +13 -0
  108. data/spec/rails/templates/capture_system_spec/app/views/capture_system_spec/widget_provide.rb +13 -0
  109. data/spec/rails/templates/capture_system_spec/app/views/layouts/erb_layout_needing_content.html.erb +15 -0
  110. data/spec/rails/templates/capture_system_spec/app/views/layouts/widget_layout_needing_content_content_for.rb +23 -0
  111. data/spec/rails/templates/capture_system_spec/app/views/layouts/widget_layout_needing_content_yield.rb +23 -0
  112. data/spec/rails/templates/class_loading_system_spec/app/controllers/class_loading_system_spec_controller.rb +74 -0
  113. data/spec/rails/templates/class_loading_system_spec/app/models/views/app_models_helper.rb +5 -0
  114. data/spec/rails/templates/class_loading_system_spec/app/models/views/models_widget.rb +5 -0
  115. data/spec/rails/templates/class_loading_system_spec/app/views/autoload_namespace/autoload_widget.rb +11 -0
  116. data/spec/rails/templates/class_loading_system_spec/app/views/class_loading_system_spec/_loaded_underscore_widget.rb +11 -0
  117. data/spec/rails/templates/class_loading_system_spec/app/views/class_loading_system_spec/_underscore_view.rb +5 -0
  118. data/spec/rails/templates/class_loading_system_spec/app/views/class_loading_system_spec/_underscore_widget.rb +11 -0
  119. data/spec/rails/templates/class_loading_system_spec/app/views/class_loading_system_spec/app_models.rb +6 -0
  120. data/spec/rails/templates/class_loading_system_spec/app/views/class_loading_system_spec/autoload_one_widget_from_another.rb +7 -0
  121. data/spec/rails/templates/class_loading_system_spec/app/views/class_loading_system_spec/class_should_not_load.rb +9 -0
  122. data/spec/rails/templates/class_loading_system_spec/app/views/class_loading_system_spec/lib_views.rb +8 -0
  123. data/spec/rails/templates/class_loading_system_spec/app/views/class_loading_system_spec/use_lib_widget_from_view_widget.rb +9 -0
  124. data/spec/rails/templates/class_loading_system_spec/app/views/class_loading_system_spec/use_models_widget_from_view_widget.rb +7 -0
  125. data/spec/rails/templates/class_loading_system_spec/app/views/some_namespace/some_other_namespace/.git_keep +0 -0
  126. data/spec/rails/templates/class_loading_system_spec/app/views/sub_widget.rb +5 -0
  127. data/spec/rails/templates/class_loading_system_spec/lib/arbitrary_name/some_widget.rb +7 -0
  128. data/spec/rails/templates/class_loading_system_spec/lib/views/class_loading_system_spec/lib_views_helper.rb +5 -0
  129. data/spec/rails/templates/class_loading_system_spec/lib/views/class_loading_system_spec/widget_defined_outside_app_views.rb +5 -0
  130. data/spec/rails/templates/class_loading_system_spec/lib/views/lib_widget.rb +5 -0
  131. data/spec/rails/templates/complex_helpers_system_spec/app/controllers/complex_helpers_system_spec_controller.rb +14 -0
  132. data/spec/rails/templates/complex_helpers_system_spec/app/views/complex_helpers_system_spec/cache_test.rb +12 -0
  133. data/spec/rails/templates/complex_helpers_system_spec/app/views/complex_helpers_system_spec/fields_for_test.rb +14 -0
  134. data/spec/rails/templates/complex_helpers_system_spec/app/views/complex_helpers_system_spec/form_for_test.rb +14 -0
  135. data/spec/rails/templates/complex_helpers_system_spec/config/environments/development.rb +31 -0
  136. data/spec/rails/templates/data_passing_system_spec/app/controllers/data_passing_system_spec_controller.rb +101 -0
  137. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/_erb_to_parallel_widget_handoff_erb.html.erb +3 -0
  138. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/_implicit_erb_to_widget_handoff_erb.html.erb +3 -0
  139. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/_implicit_variable_write_erb.html.erb +1 -0
  140. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/_widget_to_parallel_erb_handoff_erb.html.erb +1 -0
  141. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/erb_copied_variables.html.erb +1 -0
  142. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/erb_to_parallel_widget_handoff.html.erb +2 -0
  143. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/erb_to_parallel_widget_handoff_widget.rb +5 -0
  144. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/explicit_controller_variable_read.rb +6 -0
  145. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/extra_variables.rb +23 -0
  146. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/extra_variables_requested.rb +24 -0
  147. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_erb_to_widget_handoff.html.erb +2 -0
  148. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_erb_to_widget_handoff_widget.rb +7 -0
  149. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_shared_variable_access.rb +5 -0
  150. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_shared_variable_access_inheritance.rb +6 -0
  151. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_shared_variable_access_inheritance_child_one.rb +7 -0
  152. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_shared_variable_access_inheritance_child_two.rb +5 -0
  153. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_shared_variable_access_inheritance_parent.rb +3 -0
  154. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_shared_variable_access_inner.rb +8 -0
  155. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_variable_read.rb +5 -0
  156. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_variable_read_inner.rb +7 -0
  157. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_variable_write.html.erb +2 -0
  158. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/implicit_variable_write_widget.rb +7 -0
  159. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/parent_to_child_passing.rb +7 -0
  160. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/parent_to_child_passing_child.rb +7 -0
  161. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/parent_to_child_passing_partial.rb +7 -0
  162. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/parent_to_child_passing_partial_child.rb +7 -0
  163. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/passing_data_widget.rb +8 -0
  164. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/passing_locals_and_controller_variables_widget.rb +9 -0
  165. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/passing_locals_widget.rb +8 -0
  166. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/variables_to_layout.rb +7 -0
  167. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/widget_copied_variables.rb +9 -0
  168. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/widget_to_parallel_erb_handoff.html.erb +2 -0
  169. data/spec/rails/templates/data_passing_system_spec/app/views/data_passing_system_spec/widget_to_parallel_erb_handoff_widget.rb +5 -0
  170. data/spec/rails/templates/data_passing_system_spec/app/views/layouts/data_layout.rb +14 -0
  171. data/spec/rails/templates/default_layout_system_spec/app/controllers/default_layout_system_spec_controller.rb +9 -0
  172. data/spec/rails/templates/default_layout_system_spec/app/views/default_layout_system_spec/erb_with_widget_default_layout.html.erb +1 -0
  173. data/spec/rails/templates/default_layout_system_spec/app/views/default_layout_system_spec/widget_with_widget_default_layout.rb +5 -0
  174. data/spec/rails/templates/default_layout_system_spec/app/views/layouts/application.rb +12 -0
  175. data/spec/rails/templates/development_mode_system_spec/app/controllers/development_mode_system_spec_controller.rb +9 -0
  176. data/spec/rails/templates/development_mode_system_spec/app/views/development_mode_system_spec/reload_widget.rb +7 -0
  177. data/spec/rails/templates/development_mode_system_spec/app/views/development_mode_system_spec/sample_output.rb +9 -0
  178. data/spec/rails/templates/erb_integration_system_spec/app/controllers/erb_integration_system_spec_controller.rb +10 -0
  179. data/spec/rails/templates/erb_integration_system_spec/app/views/erb_integration_system_spec/_erb_partial_from_widget_partial.html.erb +1 -0
  180. data/spec/rails/templates/erb_integration_system_spec/app/views/erb_integration_system_spec/_fortitude_partial_with_underscore_partial.rb +5 -0
  181. data/spec/rails/templates/erb_integration_system_spec/app/views/erb_integration_system_spec/_prefers_erb_partial_partial.html.erb +1 -0
  182. data/spec/rails/templates/erb_integration_system_spec/app/views/erb_integration_system_spec/erb_partial_from_widget.rb +7 -0
  183. data/spec/rails/templates/erb_integration_system_spec/app/views/erb_integration_system_spec/erb_to_widget_with_render_partial.html.erb +3 -0
  184. data/spec/rails/templates/erb_integration_system_spec/app/views/erb_integration_system_spec/erb_to_widget_with_render_partial_widget.rb +5 -0
  185. data/spec/rails/templates/erb_integration_system_spec/app/views/erb_integration_system_spec/fortitude_partial_with_underscore.html.erb +3 -0
  186. data/spec/rails/templates/erb_integration_system_spec/app/views/erb_integration_system_spec/prefers_erb_partial.html.erb +3 -0
  187. data/spec/rails/templates/erb_integration_system_spec/app/views/erb_integration_system_spec/prefers_erb_partial_partial.rb +5 -0
  188. data/spec/rails/templates/helpers_include_all_off_system_spec/app/controllers/helpers_include_all_off_system_spec_controller.rb +13 -0
  189. data/spec/rails/templates/helpers_include_all_off_system_spec/app/helpers/application_helper.rb +5 -0
  190. data/spec/rails/templates/helpers_include_all_off_system_spec/app/helpers/some_helper.rb +5 -0
  191. data/spec/rails/templates/helpers_include_all_off_system_spec/app/views/helpers_include_all_off_system_spec/include_all_off.rb +23 -0
  192. data/spec/rails/templates/helpers_include_all_off_system_spec/config/application.rb +28 -0
  193. data/spec/rails/templates/helpers_system_spec/app/controllers/helpers_system_spec_controller.rb +86 -0
  194. data/spec/rails/templates/helpers_system_spec/app/helpers/some_helper.rb +21 -0
  195. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/automatic_helpers_disabled.rb +37 -0
  196. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/automatic_helpers_inheritance.rb +6 -0
  197. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/automatic_helpers_inheritance_child_one.rb +34 -0
  198. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/automatic_helpers_inheritance_child_two.rb +36 -0
  199. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/automatic_helpers_inheritance_parent.rb +4 -0
  200. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/basic_helpers.rb +13 -0
  201. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/block_helpers.rb +7 -0
  202. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/built_in_outputting_helpers.rb +13 -0
  203. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/built_in_outputting_to_returning.rb +8 -0
  204. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/built_in_returning_to_outputting.rb +10 -0
  205. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/controller_helper_method.rb +5 -0
  206. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/controller_helper_module.rb +5 -0
  207. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/custom_helper_outputs.rb +6 -0
  208. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/custom_helpers_basic.rb +5 -0
  209. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/custom_helpers_with_a_block.rb +6 -0
  210. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/custom_outputting_to_returning.rb +7 -0
  211. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/custom_returning_to_outputting.rb +10 -0
  212. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/helper_settings_inheritance.rb +10 -0
  213. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/helper_settings_inheritance_parent.rb +4 -0
  214. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/helpers_that_output_when_refined.rb +9 -0
  215. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/private_helper_erb.html.erb +1 -0
  216. data/spec/rails/templates/helpers_system_spec/app/views/helpers_system_spec/private_helper_fortitude.rb +5 -0
  217. data/spec/rails/templates/helpers_system_spec/lib/some_stuff.rb +5 -0
  218. data/spec/rails/templates/helpers_unrefined_system_spec/app/controllers/helpers_unrefined_system_spec_controller.rb +7 -0
  219. data/spec/rails/templates/helpers_unrefined_system_spec/app/views/helpers_unrefined_system_spec/helpers_that_output_when_refined.rb +9 -0
  220. data/spec/rails/templates/helpers_unrefined_system_spec/config/environments/production.rb +31 -0
  221. data/spec/rails/templates/layouts_system_spec/app/controllers/layouts_system_spec_controller.rb +31 -0
  222. data/spec/rails/templates/layouts_system_spec/app/views/layouts/alternate.html.erb +11 -0
  223. data/spec/rails/templates/layouts_system_spec/app/views/layouts/application.html.erb +26 -0
  224. data/spec/rails/templates/layouts_system_spec/app/views/layouts/explicit_yield.rb +12 -0
  225. data/spec/rails/templates/layouts_system_spec/app/views/layouts/widget_layout.rb +22 -0
  226. data/spec/rails/templates/layouts_system_spec/app/views/layouts_system_spec/erb_inside_widget_layout.html.erb +8 -0
  227. data/spec/rails/templates/layouts_system_spec/app/views/layouts_system_spec/the_render_widget.rb +5 -0
  228. data/spec/rails/templates/layouts_system_spec/app/views/layouts_system_spec/widget_inside_erb_layout.rb +8 -0
  229. data/spec/rails/templates/layouts_system_spec/app/views/layouts_system_spec/widget_inside_widget_layout.rb +8 -0
  230. data/spec/rails/templates/layouts_system_spec/app/views/layouts_system_spec/yield_from_widget_explicitly.rb +5 -0
  231. data/spec/rails/templates/localization_system_spec/app/controllers/localization_system_spec_controller.rb +31 -0
  232. data/spec/rails/templates/localization_system_spec/app/views/localization_system_spec/content_method.rb +13 -0
  233. data/spec/rails/templates/localization_system_spec/app/views/localization_system_spec/dot_notation.rb +5 -0
  234. data/spec/rails/templates/localization_system_spec/app/views/localization_system_spec/explicit_html.rb +13 -0
  235. data/spec/rails/templates/localization_system_spec/app/views/localization_system_spec/i18n_t.rb +5 -0
  236. data/spec/rails/templates/localization_system_spec/app/views/localization_system_spec/native_support.rb +7 -0
  237. data/spec/rails/templates/localization_system_spec/app/views/localization_system_spec/readjust_base.rb +7 -0
  238. data/spec/rails/templates/localization_system_spec/app/views/localization_system_spec/t.rb +5 -0
  239. data/spec/rails/templates/localization_system_spec/config/locales/en.yml +21 -0
  240. data/spec/rails/templates/localization_system_spec/config/locales/fr.yml +14 -0
  241. data/spec/rails/templates/localization_system_spec/config/locales/pt.yml +2 -0
  242. data/spec/rails/templates/production_mode_system_spec/app/controllers/production_mode_system_spec_controller.rb +5 -0
  243. data/spec/rails/templates/production_mode_system_spec/app/views/production_mode_system_spec/sample_output.rb +9 -0
  244. data/spec/rails/templates/rendering_context_system_spec/app/controllers/rendering_context_system_spec_controller.rb +72 -0
  245. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/_start_end_widget_through_partials_partial.html.erb +1 -0
  246. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/_uses_direct_context_for_all_widgets_partial.html.erb +1 -0
  247. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/_uses_specified_context_through_nesting_partial.html.erb +2 -0
  248. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/render_widget.rb +5 -0
  249. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/start_end_widget_basic.rb +12 -0
  250. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/start_end_widget_basic_inner.rb +7 -0
  251. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/start_end_widget_through_partials.rb +16 -0
  252. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/start_end_widget_through_partials_partial_widget.rb +7 -0
  253. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/uses_direct_context_for_all_widgets.rb +7 -0
  254. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/uses_direct_context_for_all_widgets_widget.rb +5 -0
  255. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/uses_direct_context_in_view.rb +5 -0
  256. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/uses_specified_context_in_partials.html.erb +3 -0
  257. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/uses_specified_context_in_partials_partial.rb +5 -0
  258. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/uses_specified_context_in_view.rb +5 -0
  259. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/uses_specified_context_through_nesting.rb +6 -0
  260. data/spec/rails/templates/rendering_context_system_spec/app/views/rendering_context_system_spec/uses_specified_context_through_nesting_inner_partial.rb +5 -0
  261. data/spec/rails/templates/rendering_context_system_spec/lib/simple_rc.rb +17 -0
  262. data/spec/rails/templates/rendering_system_spec/app/controllers/rendering_system_spec_controller.rb +111 -0
  263. data/spec/rails/templates/rendering_system_spec/app/views/layouts/application.html.erb +19 -0
  264. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/_layout_for_partial.html.erb +3 -0
  265. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/_the_partial.html.erb +1 -0
  266. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/partial_with_layout.rb +5 -0
  267. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_collection.html.erb +3 -0
  268. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_collection_as.html.erb +3 -0
  269. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_file_from_widget.rb +7 -0
  270. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_html_safe_strings.rb +16 -0
  271. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_inline_from_widget.rb +11 -0
  272. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_object.html.erb +3 -0
  273. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_partial_from_widget.rb +7 -0
  274. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_partial_with_layout.html.erb +3 -0
  275. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_partial_with_widget_layout.html.erb +3 -0
  276. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_template_from_widget.rb +7 -0
  277. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/render_text_from_widget.rb +7 -0
  278. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/stream_widget.rb +13 -0
  279. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/trivial_widget.rb +5 -0
  280. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/widget_layout_for_partial.rb +7 -0
  281. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/widget_with_name.rb +7 -0
  282. data/spec/rails/templates/rendering_system_spec/app/views/rendering_system_spec/word.rb +7 -0
  283. data/spec/rails/templates/rendering_system_spec/app/views/widget_to_render.rb +7 -0
  284. data/spec/rails/templates/rules_system_spec/app/controllers/rules_system_spec_controller.rb +22 -0
  285. data/spec/rails/templates/rules_system_spec/app/views/layouts/fortitude_layout_with_p.rb +19 -0
  286. data/spec/rails/templates/rules_system_spec/app/views/rules_system_spec/_intervening_partial_erb_partial.html.erb +1 -0
  287. data/spec/rails/templates/rules_system_spec/app/views/rules_system_spec/intervening_partial.rb +9 -0
  288. data/spec/rails/templates/rules_system_spec/app/views/rules_system_spec/intervening_partial_fortitude_partial.rb +9 -0
  289. data/spec/rails/templates/rules_system_spec/app/views/rules_system_spec/invalid_start_tag_in_partial.html.erb +3 -0
  290. data/spec/rails/templates/rules_system_spec/app/views/rules_system_spec/invalid_start_tag_in_partial_partial.rb +9 -0
  291. data/spec/rails/templates/rules_system_spec/app/views/rules_system_spec/invalid_start_tag_in_view.rb +9 -0
  292. data/spec/rails/templates/rules_system_spec/app/views/rules_system_spec/invalidly_nested_tag.rb +11 -0
  293. data/spec/rails/templates/rules_system_spec/app/views/rules_system_spec/invalidly_nested_tag_in_partial.html.erb +3 -0
  294. data/spec/rails/templates/rules_system_spec/app/views/rules_system_spec/invalidly_nested_tag_in_partial_partial.rb +11 -0
  295. data/spec/rails/templates/static_method_system_spec/app/controllers/static_method_system_spec_controller.rb +15 -0
  296. data/spec/rails/templates/static_method_system_spec/app/helpers/some_helper.rb +10 -0
  297. data/spec/rails/templates/static_method_system_spec/app/views/static_method_system_spec/allows_helper_access.rb +8 -0
  298. data/spec/rails/templates/static_method_system_spec/app/views/static_method_system_spec/localization.rb +7 -0
  299. data/spec/rails/templates/static_method_system_spec/config/locales/en.yml +4 -0
  300. data/spec/rails/templates/static_method_system_spec/config/locales/fr.yml +4 -0
  301. data/spec/system/around_content_system_spec.rb +399 -0
  302. data/spec/system/assigns_system_spec.rb +316 -0
  303. data/spec/system/attribute_rules_system_spec.rb +227 -0
  304. data/spec/system/basic_system_spec.rb +9 -0
  305. data/spec/system/content_inheritance_system_spec.rb +13 -0
  306. data/spec/system/convenience_methods_system_spec.rb +30 -0
  307. data/spec/system/doctypes_system_spec.rb +213 -0
  308. data/spec/system/erector_compatibility_system_spec.rb +84 -0
  309. data/spec/system/escaping_system_spec.rb +43 -0
  310. data/spec/system/formatting_system_spec.rb +63 -0
  311. data/spec/system/helpers_system_spec.rb +235 -0
  312. data/spec/system/id_uniqueness_system_spec.rb +205 -0
  313. data/spec/system/localization_system_spec.rb +94 -0
  314. data/spec/system/method_precedence_system_spec.rb +48 -0
  315. data/spec/system/needs_system_spec.rb +368 -0
  316. data/spec/system/other_outputters_system_spec.rb +117 -0
  317. data/spec/system/rails_not_available_spec.rb +11 -0
  318. data/spec/system/rebuild_notifications_system_spec.rb +208 -0
  319. data/spec/system/rendering_context_system_spec.rb +83 -0
  320. data/spec/system/setting_inheritance_system_spec.rb +585 -0
  321. data/spec/system/shared_variable_system_spec.rb +120 -0
  322. data/spec/system/start_end_comments_system_spec.rb +363 -0
  323. data/spec/system/static_method_system_spec.rb +348 -0
  324. data/spec/system/tag_rendering_system_spec.rb +253 -0
  325. data/spec/system/tag_return_value_system_spec.rb +41 -0
  326. data/spec/system/tag_rules_system_spec.rb +196 -0
  327. data/spec/system/tag_updating_system_spec.rb +171 -0
  328. data/spec/system/tilt_system_spec.rb +378 -0
  329. data/spec/system/unparsed_data_system_spec.rb +16 -0
  330. data/spec/system/void_tags_system_spec.rb +51 -0
  331. data/spec/system/widget_return_values_system_spec.rb +89 -0
  332. metadata +736 -0
@@ -0,0 +1,9 @@
1
+ class Views::DataPassingSystemSpec::PassingLocalsAndControllerVariablesWidget < Fortitude::Widgets::Html5
2
+ needs :foo, :bar, :baz
3
+
4
+ def content
5
+ p "foo is: #{foo}"
6
+ p "bar is: #{bar}"
7
+ p "baz is: #{baz}"
8
+ end
9
+ end
@@ -0,0 +1,8 @@
1
+ class Views::DataPassingSystemSpec::PassingLocalsWidget < Fortitude::Widgets::Html5
2
+ needs :foo, :bar
3
+
4
+ def content
5
+ p "foo is: #{foo}"
6
+ p "bar is: #{bar}"
7
+ end
8
+ end
@@ -0,0 +1,7 @@
1
+ class Views::DataPassingSystemSpec::VariablesToLayout < Fortitude::Widgets::Html5
2
+ needs :foo, :bar
3
+
4
+ def content
5
+ text "widget foo: #{foo}, widget bar: #{bar}"
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ require 'json'
2
+
3
+ class Views::DataPassingSystemSpec::WidgetCopiedVariables < Fortitude::Widgets::Html5
4
+ implicit_shared_variable_access true
5
+
6
+ def content
7
+ text ({ :widget_copied_variables => (instance_variables.map { |i| i.to_s }) }.to_json.html_safe)
8
+ end
9
+ end
@@ -0,0 +1,2 @@
1
+ <%= render :partial => 'widget_to_parallel_erb_handoff_widget' %>
2
+ <%= render :partial => 'widget_to_parallel_erb_handoff_erb' %>
@@ -0,0 +1,5 @@
1
+ class Views::DataPassingSystemSpec::WidgetToParallelErbHandoffWidget < Fortitude::Widgets::Html5
2
+ def content
3
+ shared_variables[:foo] = 'foo_from_widget'
4
+ end
5
+ end
@@ -0,0 +1,14 @@
1
+ class Views::Layouts::DataLayout < Fortitude::Widgets::Html5
2
+ needs :foo, :bar
3
+
4
+ def content
5
+ html do
6
+ head do
7
+ title "widget_default_layout: foo = #{foo}, bar = #{bar}"
8
+ end
9
+ body do
10
+ yield
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,9 @@
1
+ class DefaultLayoutSystemSpecController < ApplicationController
2
+ def erb_with_widget_default_layout
3
+ # nothing here
4
+ end
5
+
6
+ def widget_with_widget_default_layout
7
+ # nothing here
8
+ end
9
+ end
@@ -0,0 +1,5 @@
1
+ class Views::DefaultLayoutSystemSpec::WidgetWithWidgetDefaultLayout < Fortitude::Widgets::Html5
2
+ def content
3
+ p "widget_with_widget_default_layout"
4
+ end
5
+ end
@@ -0,0 +1,12 @@
1
+ class Views::Layouts::Application < Fortitude::Widgets::Html5
2
+ def content
3
+ html do
4
+ head do
5
+ title "widget_default_layout"
6
+ end
7
+ body do
8
+ yield
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,9 @@
1
+ class DevelopmentModeSystemSpecController < ApplicationController
2
+ def reload_widget
3
+ @datum = "one"
4
+ end
5
+
6
+ def sample_output
7
+ @name = "Jessica"
8
+ end
9
+ end
@@ -0,0 +1,7 @@
1
+ class Views::DevelopmentModeSystemSpec::ReloadWidget < Fortitude::Widgets::Html5
2
+ needs :datum
3
+
4
+ def content
5
+ p "before_reload: datum #{datum} datum"
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ class Views::DevelopmentModeSystemSpec::SampleOutput < Fortitude::Widgets::Html5
2
+ needs :name
3
+
4
+ def content
5
+ section(:class => 'one') do
6
+ p "hello, #{name}"
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,10 @@
1
+ class ErbIntegrationSystemSpecController < ApplicationController
2
+ def erb_to_widget_with_render_partial
3
+ end
4
+
5
+ def prefers_erb_partial
6
+ end
7
+
8
+ def fortitude_partial_with_underscore
9
+ end
10
+ end
@@ -0,0 +1,5 @@
1
+ class Views::ErbIntegrationSystemSpec::FortitudePartialWithUnderscorePartial < Fortitude::Widgets::Html5
2
+ def content
3
+ p "fortitude partial with underscore partial"
4
+ end
5
+ end
@@ -0,0 +1,7 @@
1
+ class Views::ErbIntegrationSystemSpec::ErbPartialFromWidget < Fortitude::Widgets::Html5
2
+ def content
3
+ p "this is the widget"
4
+ render :partial => 'erb_partial_from_widget_partial'
5
+ p "this is the widget again"
6
+ end
7
+ end
@@ -0,0 +1,3 @@
1
+ <p>erb_start</p>
2
+ <%= render :partial => 'erb_to_widget_with_render_partial_widget' %>
3
+ <p>erb_end</p>
@@ -0,0 +1,5 @@
1
+ class Views::ErbIntegrationSystemSpec::ErbToWidgetWithRenderPartialWidget < Fortitude::Widgets::Html5
2
+ def content
3
+ p "erb to widget with render partial widget"
4
+ end
5
+ end
@@ -0,0 +1,3 @@
1
+ <p>erb_start</p>
2
+ <%= render :partial => 'fortitude_partial_with_underscore_partial' %>
3
+ <p>erb_end</p>
@@ -0,0 +1,3 @@
1
+ <p>erb_start</p>
2
+ <%= render :partial => 'prefers_erb_partial_partial' %>
3
+ <p>erb_end</p>
@@ -0,0 +1,5 @@
1
+ class Views::ErbIntegrationSystemSpec::PrefersErbPartialPartial < Fortitude::Widgets::Html5
2
+ def content
3
+ p "fortitude partial"
4
+ end
5
+ end
@@ -0,0 +1,13 @@
1
+ class HelpersIncludeAllOffSystemSpecController < ApplicationController
2
+ # Rails 3.0.x doesn't support config.action_controller.include_all_helpers=; as a result, we skip that call in
3
+ # config/application.rb, and use "clear_helpers; helper :application" in the actual
4
+ # HelpersIncludeAllOffSystemSpecController to simulate that behavior.
5
+ unless Rails.application.config.action_controller.respond_to?(:include_all_helpers=)
6
+ clear_helpers
7
+ helper :application
8
+ end
9
+
10
+ def include_all_off
11
+ # nothing here
12
+ end
13
+ end
@@ -0,0 +1,5 @@
1
+ module ApplicationHelper
2
+ def excitedly(x)
3
+ "#{x}!!!"
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ module SomeHelper
2
+ def uncertainly(x)
3
+ "#{x}...?"
4
+ end
5
+ end
@@ -0,0 +1,23 @@
1
+ class Views::HelpersIncludeAllOffSystemSpec::IncludeAllOff < Fortitude::Widgets::Html5
2
+ def content
3
+ text "excitedly: "
4
+
5
+ result = begin
6
+ excitedly("awesome")
7
+ rescue => e
8
+ e.class.name
9
+ end
10
+
11
+ text result
12
+ text "; "
13
+
14
+ text "uncertainly: "
15
+ result = begin
16
+ uncertainly("cool")
17
+ rescue => e
18
+ e.class.name
19
+ end
20
+
21
+ text result
22
+ end
23
+ end
@@ -0,0 +1,28 @@
1
+ require File.expand_path('../boot', __FILE__)
2
+
3
+ require 'rails/all'
4
+
5
+ # Require the gems listed in Gemfile, including any gems
6
+ # you've limited to :test, :development, or :production.
7
+ Bundler.require(:default, Rails.env)
8
+
9
+ module HelpersIncludeAllOffSystemSpec
10
+ class Application < Rails::Application
11
+ # Settings in config/environments/* take precedence over those specified here.
12
+ # Application configuration should go into files in config/initializers
13
+ # -- all .rb files in that directory are automatically loaded.
14
+
15
+ # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
16
+ # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC.
17
+ # config.time_zone = 'Central Time (US & Canada)'
18
+
19
+ # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
20
+ # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
21
+ # config.i18n.default_locale = :de
22
+
23
+ # Rails 3.0.x doesn't support config.action_controller.include_all_helpers=; as a result, we skip that call in
24
+ # config/application.rb, and use "clear_helpers; helper :application" in the actual
25
+ # HelpersIncludeAllOffSystemSpecController to simulate that behavior.
26
+ config.action_controller.include_all_helpers = false if config.action_controller.respond_to?(:include_all_helpers=)
27
+ end
28
+ end
@@ -0,0 +1,86 @@
1
+ class HelpersSystemSpecController < ApplicationController
2
+ # This works around a bug in Rails 3.0.x for image_tag and other asset_tag methods
3
+ config.relative_url_root ||= ""
4
+
5
+ def basic_helpers
6
+ # nothing here
7
+ end
8
+
9
+ def block_helpers
10
+ # nothing here
11
+ end
12
+
13
+ def built_in_outputting_helpers
14
+ # nothing here
15
+ end
16
+
17
+ def custom_helpers_basic
18
+ # nothing here
19
+ end
20
+
21
+ def custom_helper_outputs
22
+ # nothing here
23
+ end
24
+
25
+ def custom_helpers_with_a_block
26
+ # nothing here
27
+ end
28
+
29
+ def built_in_outputting_to_returning
30
+ # nothing here
31
+ end
32
+
33
+ def built_in_returning_to_outputting
34
+ # nothing here
35
+ end
36
+
37
+ def custom_outputting_to_returning
38
+ # nothing here
39
+ end
40
+
41
+ def custom_returning_to_outputting
42
+ # nothing here
43
+ end
44
+
45
+ def helper_settings_inheritance
46
+ # nothing here
47
+ end
48
+
49
+ def decorate(x)
50
+ "*~* #{x} *~*"
51
+ end
52
+
53
+ helper_method :decorate
54
+
55
+ def controller_helper_method
56
+ # nothing here
57
+ end
58
+
59
+ require 'some_stuff'
60
+
61
+ helper SomeStuff
62
+
63
+ def controller_helper_module
64
+ # nothing here
65
+ end
66
+
67
+ def automatic_helpers_disabled
68
+ # nothing here
69
+ end
70
+
71
+ def automatic_helpers_inheritance
72
+ # nothing here
73
+ end
74
+
75
+ def private_helper_erb
76
+ # nothing here
77
+ end
78
+
79
+ def private_helper_fortitude
80
+ # nothing here
81
+ end
82
+
83
+ def helpers_that_output_when_refined
84
+ # nothing here
85
+ end
86
+ end
@@ -0,0 +1,21 @@
1
+ module SomeHelper
2
+ def excitedly(x)
3
+ "#{x}!!!"
4
+ end
5
+
6
+ def say_how_awesome_it_is
7
+ output_buffer << "super awesome!"
8
+ "not at all awesome"
9
+ end
10
+
11
+ def reverse_it
12
+ s = capture { yield "xx" }
13
+ output_buffer << s.reverse
14
+ "yy" + s
15
+ end
16
+
17
+ private
18
+ def a_private_helper
19
+ "private!"
20
+ end
21
+ end
@@ -0,0 +1,37 @@
1
+ class Views::HelpersSystemSpec::AutomaticHelpersDisabled < Fortitude::Widgets::Html5
2
+ automatic_helper_access false
3
+ helper :number_to_currency
4
+
5
+ def content
6
+ text "excitedly: "
7
+
8
+ result = begin
9
+ excitedly("awesome")
10
+ rescue => e
11
+ e.class.name
12
+ end
13
+
14
+ text result
15
+ text "; "
16
+
17
+ t = 3.months.ago
18
+ text "time_ago_in_words: "
19
+ result = begin
20
+ time_ago_in_words(t)
21
+ rescue => e
22
+ e.class.name
23
+ end
24
+
25
+ text result
26
+ text "; "
27
+
28
+ text "number_to_currency: "
29
+ result = begin
30
+ number_to_currency(1_000_000)
31
+ rescue => e
32
+ e.class.name
33
+ end
34
+
35
+ text result
36
+ end
37
+ end
@@ -0,0 +1,6 @@
1
+ class Views::HelpersSystemSpec::AutomaticHelpersInheritance < Fortitude::Widgets::Html5
2
+ def content
3
+ widget Views::HelpersSystemSpec::AutomaticHelpersInheritanceChildOne.new
4
+ widget Views::HelpersSystemSpec::AutomaticHelpersInheritanceChildTwo.new
5
+ end
6
+ end
@@ -0,0 +1,34 @@
1
+ class Views::HelpersSystemSpec::AutomaticHelpersInheritanceChildOne < Views::HelpersSystemSpec::AutomaticHelpersInheritanceParent
2
+ def content
3
+ text "C1: excitedly: "
4
+
5
+ result = begin
6
+ excitedly("awesome")
7
+ rescue => e
8
+ e.class.name
9
+ end
10
+
11
+ text result
12
+ text "; "
13
+
14
+ t = 3.months.ago
15
+ text "time_ago_in_words: "
16
+ result = begin
17
+ time_ago_in_words(t)
18
+ rescue => e
19
+ e.class.name
20
+ end
21
+
22
+ text result
23
+ text "; "
24
+
25
+ text "number_to_currency: "
26
+ result = begin
27
+ number_to_currency(1_000_000)
28
+ rescue => e
29
+ e.class.name
30
+ end
31
+
32
+ text result
33
+ end
34
+ end
@@ -0,0 +1,36 @@
1
+ class Views::HelpersSystemSpec::AutomaticHelpersInheritanceChildTwo < Views::HelpersSystemSpec::AutomaticHelpersInheritanceParent
2
+ automatic_helper_access true
3
+
4
+ def content
5
+ text "C2: excitedly: "
6
+
7
+ result = begin
8
+ excitedly("awesome")
9
+ rescue => e
10
+ e.class.name
11
+ end
12
+
13
+ text result
14
+ text "; "
15
+
16
+ t = 3.months.ago
17
+ text "time_ago_in_words: "
18
+ result = begin
19
+ time_ago_in_words(t)
20
+ rescue => e
21
+ e.class.name
22
+ end
23
+
24
+ text result
25
+ text "; "
26
+
27
+ text "number_to_currency: "
28
+ result = begin
29
+ number_to_currency(1_000_000)
30
+ rescue => e
31
+ e.class.name
32
+ end
33
+
34
+ text result
35
+ end
36
+ end
@@ -0,0 +1,4 @@
1
+ class Views::HelpersSystemSpec::AutomaticHelpersInheritanceParent < Fortitude::Widgets::Html5
2
+ automatic_helper_access false
3
+ helper :number_to_currency
4
+ end
@@ -0,0 +1,13 @@
1
+ class Views::HelpersSystemSpec::BasicHelpers < Fortitude::Widgets::Html5
2
+ def content
3
+ three_months_ago = 3.months.ago
4
+ p "Three months ago: #{distance_of_time_in_words_to_now(three_months_ago)}"
5
+
6
+ p "A million dollars: #{number_to_currency(1_000_000.00)}"
7
+
8
+ p do
9
+ text "Select datetime:"
10
+ text select_datetime(1.year.ago)
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,7 @@
1
+ class Views::HelpersSystemSpec::BlockHelpers < Fortitude::Widgets::Html5
2
+ def content
3
+ form_tag("/form_dest") do
4
+ p "inside the form"
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,13 @@
1
+ class Views::HelpersSystemSpec::BuiltInOutputtingHelpers < Fortitude::Widgets::Html5
2
+ def content
3
+ # ActionView::Helpers::TextHelpers actually contains the only set of outputting helpers that
4
+ # are built in to Rails...
5
+ div(:class => "concat_container") do
6
+ concat "this is concatted"
7
+ end
8
+
9
+ div(:class => "safe_concat_container") do
10
+ safe_concat "this is safe_concatted"
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,8 @@
1
+ class Views::HelpersSystemSpec::BuiltInOutputtingToReturning < Fortitude::Widgets::Html5
2
+ helper :concat, :transform => :return_output
3
+
4
+ def content
5
+ the_text = concat("this is the_text")
6
+ p "text is: #{the_text}"
7
+ end
8
+ end
@@ -0,0 +1,10 @@
1
+ class Views::HelpersSystemSpec::BuiltInReturningToOutputting < Fortitude::Widgets::Html5
2
+ helper :time_ago_in_words, :transform => :output_return_value
3
+
4
+ def content
5
+ t = 3.months.ago
6
+ text "it was "
7
+ retval = time_ago_in_words(t)
8
+ text ", yo"
9
+ end
10
+ end
@@ -0,0 +1,5 @@
1
+ class Views::HelpersSystemSpec::ControllerHelperMethod < Fortitude::Widgets::Html5
2
+ def content
3
+ text "it is #{decorate('Fred')}!"
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ class Views::HelpersSystemSpec::ControllerHelperModule < Fortitude::Widgets::Html5
2
+ def content
3
+ text "and #{rocketship('June')}"
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ class Views::HelpersSystemSpec::CustomHelperOutputs < Fortitude::Widgets::Html5
2
+ def content
3
+ text "how awesome: "
4
+ say_how_awesome_it_is
5
+ end
6
+ end
@@ -0,0 +1,5 @@
1
+ class Views::HelpersSystemSpec::CustomHelpersBasic < Fortitude::Widgets::Html5
2
+ def content
3
+ text "excited: #{excitedly('awesome')}"
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ class Views::HelpersSystemSpec::CustomHelpersWithABlock < Fortitude::Widgets::Html5
2
+ def content
3
+ result = (reverse_it { |v| "abc#{v}def" })
4
+ text result
5
+ end
6
+ end
@@ -0,0 +1,7 @@
1
+ class Views::HelpersSystemSpec::CustomOutputtingToReturning < Fortitude::Widgets::Html5
2
+ helper :say_how_awesome_it_is, :transform => :return_output
3
+
4
+ def content
5
+ text "and #{say_how_awesome_it_is}, yo"
6
+ end
7
+ end
@@ -0,0 +1,10 @@
1
+ class Views::HelpersSystemSpec::CustomReturningToOutputting < Fortitude::Widgets::Html5
2
+ helper :excitedly, :transform => :output_return_value
3
+
4
+ def content
5
+ text "and "
6
+ retval = excitedly("awesome")
7
+ text ", yo"
8
+ text retval
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ class Views::HelpersSystemSpec::HelperSettingsInheritance < Views::HelpersSystemSpec::HelperSettingsInheritanceParent
2
+ helper :excitedly
3
+
4
+ def content
5
+ a = excitedly("awesome")
6
+ text "it is really #{a}, yo"
7
+ s = say_how_awesome_it_is
8
+ text "and #{s}, too"
9
+ end
10
+ end
@@ -0,0 +1,4 @@
1
+ class Views::HelpersSystemSpec::HelperSettingsInheritanceParent < Fortitude::Widgets::Html5
2
+ helper :excitedly, :transform => :output_return_value
3
+ helper :say_how_awesome_it_is, :transform => :return_output
4
+ end
@@ -0,0 +1,9 @@
1
+ class Views::HelpersSystemSpec::HelpersThatOutputWhenRefined < Fortitude::Widgets::Html5
2
+ def content
3
+ text "START"
4
+ image_tag 'http://example.com/foo'
5
+ mail_to 'test@example.com'
6
+ stylesheet_link_tag 'http://example.com/bar'
7
+ text "END"
8
+ end
9
+ end