templet_rails 0.1.0 → 0.2.0

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 (276) hide show
  1. checksums.yaml +5 -5
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +334 -269
  4. data/Rakefile +21 -7
  5. data/app/assets/config/templet_rails_manifest.js +2 -0
  6. data/app/assets/javascripts/templet_rails/application.js +15 -0
  7. data/app/assets/stylesheets/templet_rails/application.css +15 -0
  8. data/app/controllers/templet/json_rendering_helpers.rb +12 -0
  9. data/app/controllers/templet/rendering_helpers.rb +53 -0
  10. data/app/controllers/templet/viewer_call_string.rb +144 -0
  11. data/app/controllers/templet/viewer_call_string_class.rb +65 -0
  12. data/app/controllers/templet/viewer_responders.rb +121 -0
  13. data/app/controllers/templet_rails/application_controller.rb +5 -0
  14. data/app/helpers/templet/constants.rb +54 -0
  15. data/app/helpers/templet/forms/bs_form.rb +73 -0
  16. data/app/helpers/templet/forms/bs_form_errors.rb +38 -0
  17. data/app/helpers/templet/forms/bs_form_field.rb +114 -0
  18. data/app/helpers/templet/forms/bs_form_group.rb +115 -0
  19. data/app/helpers/templet/layouts/html_rails.rb +36 -0
  20. data/app/helpers/templet/links.rb +28 -0
  21. data/app/helpers/templet/links/bs_btn_class.rb +61 -0
  22. data/app/helpers/templet/links/bs_link_set_base.rb +168 -0
  23. data/app/helpers/templet/links/bs_link_set_collection.rb +21 -0
  24. data/app/helpers/templet/links/bs_link_set_navigation.rb +62 -0
  25. data/app/helpers/templet/links/rest_link_procs.rb +163 -0
  26. data/app/helpers/templet/links/rest_link_procs_parent.rb +39 -0
  27. data/app/helpers/templet/links/rest_link_procs_sets.rb +30 -0
  28. data/app/helpers/templet/links/rest_link_text.rb +102 -0
  29. data/app/helpers/templet/links/rest_path.rb +90 -0
  30. data/app/helpers/templet/mixins.rb +9 -0
  31. data/app/helpers/templet/mixins/bs.rb +11 -0
  32. data/app/helpers/templet/mixins/bs/grid.rb +53 -0
  33. data/app/helpers/templet/mixins/bs/lists.rb +77 -0
  34. data/app/helpers/templet/mixins/field_procs.rb +140 -0
  35. data/app/helpers/templet/mixins/html_presenters.rb +82 -0
  36. data/app/helpers/templet/require_all.rb +45 -0
  37. data/app/helpers/templet/utils/html_search_form.rb +53 -0
  38. data/app/helpers/templet/utils/link_set_factory.rb +46 -0
  39. data/app/helpers/templet/utils/link_set_factory_wrapper.rb +53 -0
  40. data/app/helpers/templet/utils/list_model_parents.rb +27 -0
  41. data/app/helpers/templet/utils/navbar_form.rb +26 -0
  42. data/app/helpers/templet/utils/selected_wrapper.rb +40 -0
  43. data/app/helpers/templet/viewer.rb +11 -0
  44. data/app/helpers/templet/viewer/meta_model.rb +66 -0
  45. data/app/helpers/templet/viewer/meta_model_defaults.rb +56 -0
  46. data/app/helpers/templet/viewer/presenters.rb +44 -0
  47. data/app/helpers/templet/viewer/rest_actions.rb +24 -0
  48. data/app/helpers/templet/viewer_base.rb +111 -0
  49. data/app/helpers/templet/viewer_rest.rb +144 -0
  50. data/app/helpers/templet_helper.rb +10 -0
  51. data/app/helpers/templet_rails/application_helper.rb +4 -0
  52. data/app/jobs/templet_rails/application_job.rb +4 -0
  53. data/app/mailers/templet_rails/application_mailer.rb +6 -0
  54. data/app/models/templet_rails/application_record.rb +5 -0
  55. data/app/views/layouts/templet_rails/application.html.erb +16 -0
  56. data/config/routes.rb +2 -0
  57. data/lib/generators/templet/controller/controller_generator.rb +70 -68
  58. data/lib/generators/templet/core_install/USAGE +14 -0
  59. data/lib/generators/templet/core_install/core_install_generator.rb +77 -0
  60. data/lib/generators/templet/core_rspec/USAGE +5 -8
  61. data/lib/generators/templet/core_rspec/core_rspec_generator.rb +32 -47
  62. data/lib/generators/templet/destroy/USAGE +1 -1
  63. data/lib/generators/templet/destroy/destroy_generator.rb +87 -84
  64. data/lib/generators/templet/install/USAGE +16 -0
  65. data/lib/generators/templet/install/install_generator.rb +103 -0
  66. data/lib/generators/templet/routes/routes_generator.rb +43 -41
  67. data/lib/generators/templet/rspec/rspec_generator.rb +1 -0
  68. data/lib/generators/templet/scaffold/scaffold_generator.rb +66 -64
  69. data/lib/generators/templet/shared/core_helpers.rb +10 -0
  70. data/lib/generators/templet/shared/model_fields.rb +2 -2
  71. data/lib/generators/templet/templates/core/app/base_viewer.rb +1 -1
  72. data/lib/generators/templet/templates/core/app/{panel → layouts}/layout_base.rb +3 -3
  73. data/lib/generators/templet/templates/core/app/{panel → layouts}/layout_header.rb +3 -1
  74. data/lib/generators/templet/templates/core/app/{panel → layouts}/layout_header_sidebar.rb +2 -1
  75. data/lib/generators/templet/templates/core/app/{panel/nav.rb → layouts/navbar.rb} +2 -2
  76. data/lib/generators/templet/templates/core/app/layouts/navbar_args_option.rb +32 -0
  77. data/lib/generators/templet/templates/core/app/{link_sets/navbar.rb → layouts/navbar_links.rb} +2 -2
  78. data/lib/generators/templet/templates/core/app/{panel → layouts}/options_config.rb +3 -3
  79. data/lib/generators/templet/templates/core/app/layouts/panel/flash_messages.rb +35 -0
  80. data/lib/generators/templet/templates/core/app/layouts/panel/show_parents_option.rb +24 -0
  81. data/lib/generators/templet/templates/core/app/layouts/panel/sidebar_links_option.rb +26 -0
  82. data/lib/generators/templet/templates/core/spec/layouts/flash_messages_spec.rb +18 -0
  83. data/lib/generators/templet/templates/core/spec/layouts/navbar_spec.rb +19 -0
  84. data/lib/generators/templet/templates/core/spec/support/apis/api_helper.rb +2 -0
  85. data/lib/generators/templet/templates/core/spec/support/apis/shared_examples_a_json_controller.rb +1 -1
  86. data/lib/generators/templet/templates/core/spec/support/{viewer → shared}/partial_test_helpers.rb +0 -0
  87. data/lib/generators/templet/templates/core/templet/viewer_base.rb +3 -3
  88. data/lib/generators/templet/viewer/viewer_generator.rb +60 -58
  89. data/lib/tasks/templet_rails_tasks.rake +4 -0
  90. data/lib/templet_rails.rb +1 -1
  91. data/lib/templet_rails/engine.rb +5 -0
  92. data/lib/templet_rails/version.rb +1 -1
  93. data/spec/dummy/Rakefile +6 -0
  94. data/spec/dummy/app/assets/config/manifest.js +4 -0
  95. data/spec/dummy/app/assets/javascripts/application.js +15 -0
  96. data/spec/dummy/app/assets/javascripts/cable.js +13 -0
  97. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  98. data/spec/dummy/app/channels/application_cable/channel.rb +4 -0
  99. data/spec/dummy/app/channels/application_cable/connection.rb +4 -0
  100. data/spec/dummy/app/controllers/answers_controller.rb +86 -0
  101. data/spec/dummy/app/controllers/application_controller.rb +2 -0
  102. data/spec/dummy/app/controllers/categories_controller.rb +80 -0
  103. data/spec/dummy/app/controllers/questions_controller.rb +86 -0
  104. data/spec/dummy/app/helpers/app.rb +4 -0
  105. data/spec/dummy/app/helpers/app/answer_viewer.rb +21 -0
  106. data/spec/dummy/app/helpers/app/base_viewer.rb +7 -0
  107. data/spec/dummy/app/helpers/app/category_viewer.rb +26 -0
  108. data/spec/dummy/app/helpers/app/layouts/layout_base.rb +40 -0
  109. data/spec/dummy/app/helpers/app/layouts/layout_header.rb +24 -0
  110. data/spec/dummy/app/helpers/app/layouts/layout_header_sidebar.rb +19 -0
  111. data/spec/dummy/app/helpers/app/layouts/navbar.rb +55 -0
  112. data/spec/dummy/app/helpers/app/layouts/navbar_args_option.rb +32 -0
  113. data/spec/dummy/app/helpers/app/layouts/navbar_links.rb +12 -0
  114. data/spec/dummy/app/helpers/app/layouts/options_config.rb +19 -0
  115. data/spec/dummy/app/helpers/app/layouts/panel/flash_messages.rb +35 -0
  116. data/spec/dummy/app/helpers/app/layouts/panel/show_parents_option.rb +24 -0
  117. data/spec/dummy/app/helpers/app/layouts/panel/sidebar_links_option.rb +26 -0
  118. data/spec/dummy/app/helpers/app/question_viewer.rb +26 -0
  119. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  120. data/spec/dummy/app/jobs/application_job.rb +2 -0
  121. data/spec/dummy/app/mailers/application_mailer.rb +4 -0
  122. data/spec/dummy/app/models/answer.rb +12 -0
  123. data/spec/dummy/app/models/application_record.rb +3 -0
  124. data/spec/dummy/app/models/category.rb +11 -0
  125. data/spec/dummy/app/models/question.rb +15 -0
  126. data/spec/dummy/app/views/layouts/application.html.erb +15 -0
  127. data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
  128. data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
  129. data/spec/dummy/bin/bundle +3 -0
  130. data/spec/dummy/bin/rails +4 -0
  131. data/spec/dummy/bin/rake +4 -0
  132. data/spec/dummy/bin/setup +36 -0
  133. data/spec/dummy/bin/update +31 -0
  134. data/spec/dummy/bin/yarn +11 -0
  135. data/spec/dummy/config.ru +5 -0
  136. data/spec/dummy/config/application.rb +30 -0
  137. data/spec/dummy/config/boot.rb +5 -0
  138. data/spec/dummy/config/cable.yml +10 -0
  139. data/spec/dummy/config/database.yml +25 -0
  140. data/spec/dummy/config/environment.rb +5 -0
  141. data/spec/dummy/config/environments/development.rb +61 -0
  142. data/spec/dummy/config/environments/production.rb +94 -0
  143. data/spec/dummy/config/environments/test.rb +46 -0
  144. data/spec/dummy/config/initializers/application_controller_renderer.rb +8 -0
  145. data/spec/dummy/config/initializers/assets.rb +14 -0
  146. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  147. data/spec/dummy/config/initializers/content_security_policy.rb +25 -0
  148. data/spec/dummy/config/initializers/cookies_serializer.rb +5 -0
  149. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  150. data/spec/dummy/config/initializers/inflections.rb +16 -0
  151. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  152. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  153. data/spec/dummy/config/locales/en.yml +33 -0
  154. data/spec/dummy/config/puma.rb +34 -0
  155. data/spec/dummy/config/routes.rb +9 -0
  156. data/spec/dummy/config/spring.rb +6 -0
  157. data/spec/dummy/config/storage.yml +34 -0
  158. data/spec/dummy/db/development.sqlite3 +0 -0
  159. data/spec/dummy/db/migrate/20190709192619_create_categories.rb +9 -0
  160. data/spec/dummy/db/migrate/20190709192656_create_questions.rb +12 -0
  161. data/spec/dummy/db/migrate/20190709192737_create_answers.rb +13 -0
  162. data/spec/dummy/db/schema.rb +42 -0
  163. data/spec/dummy/db/test.sqlite3 +0 -0
  164. data/spec/dummy/log/development.log +64 -0
  165. data/spec/dummy/log/test.log +40792 -0
  166. data/spec/dummy/package.json +5 -0
  167. data/spec/dummy/public/404.html +67 -0
  168. data/spec/dummy/public/422.html +67 -0
  169. data/spec/dummy/public/500.html +66 -0
  170. data/{lib/generators/templet/templates/core/controllers/.keep → spec/dummy/public/apple-touch-icon-precomposed.png} +0 -0
  171. data/spec/dummy/public/apple-touch-icon.png +0 -0
  172. data/spec/dummy/public/favicon.ico +0 -0
  173. data/spec/dummy/spec/apis/answers_controller_spec.rb +17 -0
  174. data/spec/dummy/spec/apis/categories_controller_spec.rb +13 -0
  175. data/spec/dummy/spec/apis/questions_controller_spec.rb +15 -0
  176. data/spec/dummy/spec/helpers/app/answer_viewer_spec.rb +18 -0
  177. data/spec/dummy/spec/helpers/app/category_viewer_spec.rb +14 -0
  178. data/spec/dummy/spec/helpers/app/layouts/flash_messages_spec.rb +18 -0
  179. data/spec/dummy/spec/helpers/app/layouts/navbar_spec.rb +19 -0
  180. data/spec/dummy/spec/helpers/app/question_viewer_spec.rb +16 -0
  181. data/spec/dummy/spec/support/apis/api_helper.rb +15 -0
  182. data/spec/dummy/spec/support/apis/shared_examples_a_json_controller.rb +196 -0
  183. data/spec/dummy/spec/support/templet/partial_test_helpers.rb +32 -0
  184. data/spec/dummy/spec/support/templet/shared_examples_a_viewer.rb +105 -0
  185. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/-6/-6-48LISBeQVJvpEXNgFstDrCriEFNmvje6XhidzlV4.cache +1 -0
  186. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/-D/-DLE9y_1ICajcEaHcprHYBO8vjXpHySH_56FSb0SLOs.cache +0 -0
  187. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/-Y/-YJ1ILDQvu3hOKkF0VR9K_z04e2-EVHglO0MAFS8gpQ.cache +1 -0
  188. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/-_/-_7FgdEon9WttcnvoyQAysmonCHN7FxsrcuDa5OTUJQ.cache +1 -0
  189. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/0u/0u-iWymOJvpggI1uY7Na3322xwcjNY7egB-czjV96m4.cache +2 -0
  190. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/0x/0xArd189AygdGItqWO0_5BfinFQjLZjwyVsAGWqOgKg.cache +1 -0
  191. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/2S/2SfjLWkOp2BGM0OzwsshKpnXI8rlJFOV6ZJsIszRn6k.cache +1 -0
  192. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/3h/3hFAACevvXtDja9zz3rMK6gA1MD1I7_puWyRRkV7sLk.cache +2 -0
  193. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/4o/4oNwzIrltWrfajciBz7JHd5RT5_XVv04L6NdaBGN794.cache +3 -0
  194. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/7F/7F3o6QQqoI0bDk6-A5qMN8LCZQALddlu23KiRWBxtWk.cache +0 -0
  195. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Af/AfFBDeKpi4wSUc7rcjxfjPbEgV6GOGXTjeZhHrfDX48.cache +0 -0
  196. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Bf/BfD6ZVgFq-kWDMMVb2EE5ZAKgsgn1VUR9oVxD0hHVMI.cache +0 -0
  197. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Bo/Bogjbc_D5J-6_m5KEgeXt_GHc-IbUt1_FDWP4PHV0P8.cache +1 -0
  198. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/DF/DF3HgsSD9LO1Bz8d3GJi_G6wBExmsnBJ6b1pvZEGE7w.cache +1 -0
  199. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/DO/DO8Gqh32jK2GrO9uIlH7qvDkelVw0VM8CTSOUj6iUEo.cache +1 -0
  200. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/GC/GCNwk_ABiY0z51bz8iC8tqLLWKhQwxW4-JLNKv-SRe0.cache +1 -0
  201. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Gl/Gls_Zud1kxq7p08FGBfzalbaLMlLBl28bOYebh7Ljrg.cache +0 -0
  202. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Gm/GmHHk4YNC0G2V_5gQZp0U6mKFPxGSgL7fwWI3_fajrk.cache +1 -0
  203. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Gr/GreB3WHN8MyWMDFGNyqJJcxGblgo-5XepsEHvdJSQGI.cache +1 -0
  204. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/HC/HCDOUd7-S45aJ_PjVAC_Vmjyud3i1aQv4cE3t9_Z3Dw.cache +2 -0
  205. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Hd/HdvsElcHSt7aKjG9jocgIQJEvBjBbeSZ8HntI1pc38o.cache +1 -0
  206. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Iv/IvR5RxSTQkxfGWSoy5S2s7wO5u5qwCJ5mNAhqNJtJDY.cache +0 -0
  207. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/JS/JSYyQZJzLNqpmVR--ZDUW6PY7_HflyFFHDAOLenxlP4.cache +1 -0
  208. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Jx/JxJXzSistcpH4S_9CbGx_wyjVTaE77ZDDfOc4uTfvdM.cache +0 -0
  209. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/MH/MHCZUSVJq62YPmcVVkfjp2B5uH_nDL7snLl4yqvlSJY.cache +1 -0
  210. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/MY/MY5theanttko1gCnW9vKb0Z1GkJn8Ofk149HwOt0UAM.cache +0 -0
  211. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Mn/MnGg5XDll2jo-E_CTC1htiNc0hOY6z80_bwGCvpYTXk.cache +1 -0
  212. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Nt/NtYu5CjAvU5ZHxSOn6Q4LPukD3hBE-3vYe30d_uSBzM.cache +1 -0
  213. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Nu/NuIepb7qomZzBDAJMUROsshKo8TJxdmFR4yOe64W58w.cache +1 -0
  214. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/R7/R7ngeIqpdwSWkbjbxxzh6B-KczkWMcxYMIkj5inxrV8.cache +1 -0
  215. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/S9/S9MhILnM64qd2M9Z92TrNMtw7VUWZxf3H367OO8rlhs.cache +2 -0
  216. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/SI/SIZUy2mtjUm_G1YIulRCovzgkCwV1eoR2NLiYcsR1Ws.cache +0 -0
  217. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Sl/SlECThrSAExfICiFGVi-zu240BVDaUldaRs4qcj354U.cache +0 -0
  218. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/St/St6dTA4niiCDLnnArKZV38uZNFf6MbEZ_jHGC-Upft0.cache +0 -0
  219. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/T6/T6p-BnPmMCmpJdaqrjWmLMsBW8SNJpSW6w-Azc3XGVk.cache +1 -0
  220. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Vs/VsZPCEai1GtOT-vHjxMS8kAP9ASG5i_2O_EP76uI7Qs.cache +0 -0
  221. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Vv/Vv6dack32HV3tIZ_6F4BF8Mrrnb7wZEG4VlEKumQ6L0.cache +2 -0
  222. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Wp/WpV6mJwJX9dwIFJGLoJoa-gXNe1-ZHusE9SwvnWysa8.cache +0 -0
  223. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Wy/Wya0wl0Q2nXYb5-bC5Fbo0sDZfKb3415AjtSjld7fQI.cache +1 -0
  224. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/b7/b7j7TIOE1nnqvMku0QePWFrwCkaKkNpxkiWST6PAplo.cache +1 -0
  225. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ck/ckDOh-FroVE8r1fwUNWmnRconIREuVdmkZEFkaP9KfU.cache +1 -0
  226. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/eN/eNQPQP-9gB3xzxJBsG7soV6Ie0YZ3gxIS97PgYtZVT8.cache +0 -0
  227. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/gb/gbUMPMF8S0OQVsFHyAjHpHVEg-3iZzTVIQZDmfq-ycE.cache +1 -0
  228. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/if/ifyb5SlIS8vkACz_6P0uTOGijMB4C5TyFWmrMq3DYIg.cache +2 -0
  229. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/jg/jg-s5YLdnojCtHqzfDTsvcy6UHewDRl1X09qlGyvyag.cache +1 -0
  230. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ko/koPyQus8Oqrx18bnLj-5nJrKvFf6FDDQbv2qEa7Bl7M.cache +0 -0
  231. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/lG/lGRRazgrFErFx1PkfDlca6r-0MGQR40i0tq0Wgm2FNU.cache +1 -0
  232. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/lS/lStvx9Beg2l4s8L-QdTSKuc5_qQPQAZPnIcRI7JkpPE.cache +2 -0
  233. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/lZ/lZIacHrJV5bDohEHsVOXDGIDrUH2h4YvwV9g-MWmh3k.cache +3 -0
  234. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/lq/lqM4-wfprvp5FEBp1pSm88Jwx-Vb2oJab2rjLtUcIyM.cache +1 -0
  235. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/n_/n_xYqQYhwEMQknb3jFQnjlxxBE9TzMNHCdJ-bEyZFIw.cache +2 -0
  236. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/nx/nxTv3sKVUQZADJyM3dPaVmUA78MIsMLD_K279yN_GsI.cache +2 -0
  237. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ps/psGFyjvQcs8JpIV8BDeCqQfHaLYgIgSAi86n4RrFpFs.cache +1 -0
  238. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/r1/r1IIabhuPhgB3n8V3ZMRN0SqIsXJ8bH0ABTRzHTG1SU.cache +2 -0
  239. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/vt/vtskp0QTt72oDQNM6mYZ8pCclh2HICHeYZ1QtDvC5xo.cache +1 -0
  240. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/wi/win_v0ZNu-l7AoRx8w3ls1xcy0mUExLBVMCSr5oaJFc.cache +2 -0
  241. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/yo/yoggubxI12fIM1o5TtxUialrUN-LWOfRaV_tqc1HAC4.cache +0 -0
  242. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/zH/zHnHpZP25wEHaF3mI_M9RGH1zeCApf6mwhLB3Lku1zs.cache +3 -0
  243. data/spec/dummy/tmp/development_secret.txt +1 -0
  244. data/spec/factories/answers.rb +10 -0
  245. data/spec/factories/categories.rb +5 -0
  246. data/spec/factories/questions.rb +8 -0
  247. data/spec/helpers/templet/forms/bs_form_errors_spec.rb +18 -0
  248. data/spec/helpers/templet/forms/bs_form_spec.rb +58 -0
  249. data/spec/helpers/templet/layout/html_rails_spec.rb +64 -0
  250. data/spec/helpers/templet/links/bs_link_set_collection_spec.rb +79 -0
  251. data/spec/helpers/templet/links/rest_link_procs_params_spec.rb +68 -0
  252. data/spec/helpers/templet/links/rest_link_procs_parents_spec.rb +78 -0
  253. data/spec/helpers/templet/links/rest_link_procs_spec.rb +140 -0
  254. data/spec/models/answer_spec.rb +9 -0
  255. data/spec/models/category_spec.rb +9 -0
  256. data/spec/models/question_spec.rb +9 -0
  257. data/spec/rails_helper.rb +61 -0
  258. data/spec/spec_helper.rb +108 -0
  259. data/spec/support/templet/model_parent_helpers.rb +36 -0
  260. data/spec/support/templet/partial_test_helpers.rb +32 -0
  261. data/spec/support/templet/rest_link_procs_assignments.rb +43 -0
  262. data/spec/support/templet/rest_link_procs_helpers.rb +15 -0
  263. metadata +470 -38
  264. data/.gitignore +0 -8
  265. data/.travis.yml +0 -5
  266. data/Gemfile +0 -6
  267. data/LICENSE.txt +0 -21
  268. data/bin/console +0 -14
  269. data/bin/setup +0 -8
  270. data/lib/generators/templet/core/USAGE +0 -23
  271. data/lib/generators/templet/core/core_generator.rb +0 -128
  272. data/lib/generators/templet/templates/core/app/panel/flash_messages.rb +0 -33
  273. data/lib/generators/templet/templates/core/app/panel/nav_args_option.rb +0 -30
  274. data/lib/generators/templet/templates/core/app/panel/show_parents_option.rb +0 -22
  275. data/lib/generators/templet/templates/core/app/panel/sidebar_links_option.rb +0 -24
  276. data/templet_rails.gemspec +0 -36
@@ -5,102 +5,104 @@ require_relative '../shared/model_option'
5
5
  require_relative '../shared/actions_option'
6
6
  require_relative '../shared/model_fields'
7
7
 
8
- class Templet::ControllerGenerator < Rails::Generators::NamedBase
9
- include Shared::ModelOption
10
- include Shared::ParentOption
11
- include Shared::GrandParentOption
12
- include Shared::ActionsOption
8
+ module Templet
9
+ class ControllerGenerator < Rails::Generators::NamedBase
10
+ include Shared::ModelOption
11
+ include Shared::ParentOption
12
+ include Shared::GrandParentOption
13
+ include Shared::ActionsOption
13
14
 
14
- include Shared::ModelFields
15
+ include Shared::ModelFields
15
16
 
16
- TEMPLATE_FILE = 'controller.rb.erb'
17
+ TEMPLATE_FILE = 'controller.rb.erb'
17
18
 
18
- SET_MODEL_ACTIONS = %w(show edit update destroy)
19
+ SET_MODEL_ACTIONS = %w(show edit update destroy)
19
20
 
20
- source_root File.expand_path('.', __FILE__)
21
- desc
21
+ source_root File.expand_path('.', __FILE__)
22
+ desc
22
23
 
23
- source_root File.expand_path('../../templates', __FILE__)
24
+ source_root File.expand_path('../../templates', __FILE__)
24
25
 
25
- def create_controller
26
- template TEMPLATE_FILE, controller_path
27
- end
26
+ def create_controller
27
+ template TEMPLATE_FILE, controller_path
28
+ end
28
29
 
29
- private
30
+ private
30
31
 
31
- def include_action?(action)
32
- if actions
33
- actions.include? action.to_s
34
- else
35
- true
32
+ def include_action?(action)
33
+ if actions
34
+ actions.include? action.to_s
35
+ else
36
+ true
37
+ end
36
38
  end
37
- end
38
39
 
39
- def before_action(name, only=nil, prefix: "\n ")
40
- return unless name
40
+ def before_action(name, only=nil, prefix: "\n ")
41
+ return unless name
41
42
 
42
- suffix = only&.any? ? ', only: %i(' + only * ' ' + ')' : ''
43
+ suffix = only&.any? ? ', only: %i(' + only * ' ' + ')' : ''
43
44
 
44
- "#{prefix}before_action :set_#{name}#{suffix}\n"
45
- end
45
+ "#{prefix}before_action :set_#{name}#{suffix}\n"
46
+ end
46
47
 
47
- def set_model?
48
- not actions or set_model_actions.any?
49
- end
48
+ def set_model?
49
+ not actions or set_model_actions.any?
50
+ end
50
51
 
51
- def set_model_actions
52
- actions ? SET_MODEL_ACTIONS & actions : SET_MODEL_ACTIONS
53
- end
52
+ def set_model_actions
53
+ actions ? SET_MODEL_ACTIONS & actions : SET_MODEL_ACTIONS
54
+ end
54
55
 
55
- def controller_path
56
- File.join("app/controllers", "#{file_path.pluralize}_controller.rb")
57
- end
56
+ def controller_path
57
+ File.join("app/controllers", "#{file_path.pluralize}_controller.rb")
58
+ end
58
59
 
59
- def model_plural
60
- model_name.pluralize
61
- end
60
+ def model_plural
61
+ model_name.pluralize
62
+ end
62
63
 
63
- def model_class_name
64
- model_name.classify
65
- end
64
+ def model_class_name
65
+ model_name.classify
66
+ end
66
67
 
67
- def receiver
68
- parent ? "@#{parent}.#{model_plural}" : model_class_name
69
- end
68
+ def receiver
69
+ parent ? "@#{parent}.#{model_plural}" : model_class_name
70
+ end
70
71
 
71
- def redirect_path(use_instance=true)
72
- if parent
73
- params = ", id: @#{model_name}" if model_name? and use_instance
72
+ def redirect_path(use_instance=true)
73
+ if parent
74
+ params = ", id: @#{model_name}" if model_name? and use_instance
74
75
 
75
- "[#{path_scope}@#{parent}, #{path_element use_instance}#{params}]"
76
- else
77
- "[#{path_scope}#{path_element false}]"
76
+ "[#{path_scope}@#{parent}, #{path_element use_instance}#{params}]"
77
+ else
78
+ "[#{path_scope}#{path_element false}]"
79
+ end
78
80
  end
79
- end
80
81
 
81
- def path_scope
82
- elements = file_path.split('/')[0..-2]
82
+ def path_scope
83
+ elements = file_path.split('/')[0..-2]
83
84
 
84
- if elements.any?
85
- (elements.size == 1 ? ":#{elements.first}" : "'/#{elements * "/"}'") + ', '
85
+ if elements.any?
86
+ (elements.size == 1 ? ":#{elements.first}" : "'/#{elements * "/"}'") + ', '
87
+ end
86
88
  end
87
- end
88
89
 
89
- def path_element(use_instance)
90
- if use_instance
91
- (model_name? ? ':' : '@') + singular_name
92
- else
93
- ":#{plural_name}"
90
+ def path_element(use_instance)
91
+ if use_instance
92
+ (model_name? ? ':' : '@') + singular_name
93
+ else
94
+ ":#{plural_name}"
95
+ end
94
96
  end
95
- end
96
97
 
97
- def path_controller(prefix=nil)
98
- parents = [ parent.pluralize, '1' ] if parent
98
+ def path_controller(prefix=nil)
99
+ parents = [ parent.pluralize, '1' ] if parent
99
100
 
100
- [ *file_path.split('/')[0..-2], *parents, plural_name, *prefix ] * '/'
101
- end
101
+ [ *file_path.split('/')[0..-2], *parents, plural_name, *prefix ] * '/'
102
+ end
102
103
 
103
- def to_option(key, name, prefix='')
104
- name ? "#{prefix}#{key}: :#{name}" : ''
104
+ def to_option(key, name, prefix='')
105
+ name ? "#{prefix}#{key}: :#{name}" : ''
106
+ end
105
107
  end
106
108
  end
@@ -0,0 +1,14 @@
1
+ Description:
2
+ Installs the complete framework source under new directory trees,
3
+ by default, the core code is copied under app/helpers/templet/,
4
+ but you can change this with the option, DEST.
5
+ If you install under a directory, like lib/ or vendor/, then you must
6
+ uncomment the 'require' statements in the file, templet/require_all.rb.
7
+
8
+ Example:
9
+ rails generate templet:core_insall --dest lib/
10
+
11
+ This will create:
12
+ app/controllers/templet/* # Helper modules for invoking the framework
13
+ app/helpers/templet/** # If dest is given, it replaces 'app/helpers'
14
+ app/helpers/templet_helper.rb # For framework settings
@@ -0,0 +1,77 @@
1
+
2
+ require_relative '../shared/core_helpers'
3
+
4
+ module Templet
5
+ class CoreInstallGenerator < Rails::Generators::Base
6
+ include Shared::CoreHelpers
7
+
8
+ CONTROLLER_SUBDIR = 'controllers/'
9
+ APIS_SUBDIR = 'apis/'
10
+
11
+ source_root File.expand_path('./', __FILE__)
12
+ desc
13
+
14
+ DEST_DESC = 'The directory that the core code will be copied beneath'
15
+ class_option :dest, type: :string, aliases: "-d", default: '', desc: DEST_DESC
16
+
17
+ def ensure_uninstalled
18
+ if dir = already_installed_at
19
+ puts "Can't install while there are files present in #{dir}"
20
+
21
+ exit
22
+ end
23
+ end
24
+
25
+ def create_templet_core
26
+ create_templet_tree
27
+
28
+ create_controller_modules
29
+
30
+ create_templet_helper_rb
31
+ end
32
+
33
+ private
34
+
35
+ def create_templet_tree
36
+ directory core_dir_source, core_dir_target
37
+ end
38
+
39
+ def create_controller_modules
40
+ directory controller_dir_source, controller_dir_target
41
+ end
42
+
43
+ def create_templet_helper_rb
44
+ copy_helper 'templet_helper.rb'
45
+ end
46
+
47
+ def core_dir_source
48
+ SOURCE_ROOT + TEMPLET_SUBDIR
49
+ end
50
+ def core_dir_target
51
+ core_dest_subdir + TEMPLET_SUBDIR
52
+ end
53
+
54
+ def controller_dir_source
55
+ SOURCE_ROOT + CONTROLLER_SUBDIR
56
+ end
57
+ def controller_dir_target
58
+ APP_ROOT + CONTROLLER_SUBDIR + TEMPLET_SUBDIR
59
+ end
60
+
61
+ def dest_dirs
62
+ super + [ LIB_ROOT + TEMPLET_SUBDIR, core_dest_subdir + TEMPLET_SUBDIR ]
63
+ end
64
+
65
+ def core_dest_subdir
66
+ if ( dest = options['dest'] ).present?
67
+ if Dir.exists? dest
68
+ dest + (dest.end_with?('/') ? '' : '/')
69
+ else
70
+ raise "Destination directory, #{dest}, must exist"
71
+ end
72
+ else
73
+ APP_ROOT + HELPERS_SUBDIR
74
+ end
75
+ end
76
+ end
77
+ end
@@ -1,16 +1,13 @@
1
1
  Description:
2
- Generates Rspec tests for two sections of the core code.
3
- First, tests to check the HTML in the view layouts.
4
- Second, an optional step that adds various tests for the framework itself.
5
- This second step is superfluous unless you're going to change the source
2
+ Generates Rspec tests for the core code.
3
+ It is superfluous unless you're going to change the source
6
4
  code - as these tests offer few, if any, real safeguards.
7
- Note that the framework tests (second step) will only be installed if
8
- the option, --include-core-specs is given, and also if the core is kept
5
+ Note that the tests will only be installed if the core is kept
9
6
  in its default directory, i.e. under app/helpers/templet/.
10
7
 
11
8
  Example:
12
9
  rails generate template:core_rspec --include-core-specs
13
10
 
14
11
  This will create files under the directories:
15
- spec/helpers/app/panel/ # For testing layouts
16
- spec/helpers/templet/ # If --include-core-specs is given
12
+ spec/helpers/templet/
13
+ spec/suppoert/templet/
@@ -1,65 +1,50 @@
1
1
 
2
2
  require_relative '../shared/core_helpers'
3
3
 
4
- class Templet::CoreRspecGenerator < Rails::Generators::Base
5
- include Shared::CoreHelpers
4
+ module Templet
5
+ class CoreRspecGenerator < Rails::Generators::Base
6
+ include Shared::CoreHelpers
6
7
 
7
- PANEL_SUBDIR = 'panel/'
8
+ source_root File.expand_path('./', __FILE__)
9
+ desc
8
10
 
9
- DESC = "Add specs for the templet core (default: false)"
10
- class_option 'include-core-specs', type: :boolean, default: false, desc: DESC
11
+ def copy_templet_specs
12
+ if Dir.exists? core_default_dir
13
+ %i(shared core).each do |subdir|
14
+ directory spec_support_dir_source(subdir), spec_support_dir_target
15
+ end
11
16
 
12
- source_root File.expand_path('./', __FILE__)
13
- desc
17
+ directory spec_templet_dir_source, spec_templet_dir_target
14
18
 
15
- def copy_app_panel_specs
16
- directory app_panel_dir_source, app_panel_dir_target
17
- end
18
-
19
- def copy_templet_specs
20
- if include_core_specs? and Dir.exists? core_default_dir
21
- directory spec_support_dir_source, spec_support_dir_target
22
-
23
- directory spec_templet_dir_source, spec_templet_dir_target
24
-
25
- puts message_for_file_change
19
+ puts message_for_file_change
20
+ end
26
21
  end
27
- end
28
22
 
29
- private
30
-
31
- def app_panel_dir_source
32
- SOURCE_ROOT + SPEC_SUBDIR + PANEL_SUBDIR
33
- end
34
- def app_panel_dir_target
35
- SPEC_SUBDIR + HELPERS_SUBDIR + APP_SUBDIR + PANEL_SUBDIR
36
- end
37
-
38
- def spec_templet_dir_source
39
- SOURCE_ROOT + SPEC_SUBDIR + TEMPLET_SUBDIR
40
- end
23
+ private
41
24
 
42
- def spec_templet_dir_target
43
- SPEC_SUBDIR + HELPERS_SUBDIR + TEMPLET_SUBDIR
44
- end
25
+ def spec_templet_dir_source
26
+ SOURCE_ROOT + SPEC_SUBDIR + TEMPLET_SUBDIR
27
+ end
45
28
 
46
- def spec_support_dir_source
47
- SOURCE_ROOT + spec_support_dir + 'core/'
48
- end
49
- def spec_support_dir_target
50
- spec_support_dir + TEMPLET_SUBDIR
51
- end
29
+ def spec_templet_dir_target
30
+ SPEC_SUBDIR + HELPERS_SUBDIR + TEMPLET_SUBDIR
31
+ end
52
32
 
53
- def include_core_specs?
54
- options['include-core-specs']
55
- end
33
+ def spec_support_dir_source(subdir)
34
+ SOURCE_ROOT + spec_support_dir + "#{subdir}/"
35
+ end
36
+ def spec_support_dir_target
37
+ spec_support_dir + TEMPLET_SUBDIR
38
+ end
56
39
 
57
- def message_for_file_change
58
- %Q(
40
+ def message_for_file_change
41
+ %Q(
59
42
  If you get rspec failures you may need to change values in the file:
60
- spec/support/templet/model_parent_helpers.rb
43
+ spec/support/templet/model_parent_helpers.rb
61
44
  Or if you'd rather just get rid of these failing tests run this:
62
- $ rails generate templet:destroy --rm-core-rspec
45
+ $ rails generate templet:destroy --rm-core-rspec
63
46
  )
47
+ end
64
48
  end
65
49
  end
50
+
@@ -7,7 +7,7 @@ Description:
7
7
 
8
8
  Examples:
9
9
  # To get rid of the whole lot
10
- rails generate templet:destroy -all
10
+ rails generate templet:destroy --all
11
11
 
12
12
  # To delete just the templet core tests - leaves everything else intact
13
13
  rails generate templet:destroy --only-core-rspec
@@ -1,126 +1,129 @@
1
1
 
2
- class Templet::DestroyGenerator < Rails::Generators::Base
3
- ALL_DESC = "Remove all files to do with this framework (default: false)"
4
- class_option 'all', type: :boolean, default: false, desc: ALL_DESC
2
+ module Templet
3
+ class DestroyGenerator < Rails::Generators::Base
4
+ ALL_DESC = "Remove all files to do with this framework (default: false)"
5
+ class_option 'all', type: :boolean, default: false, desc: ALL_DESC
5
6
 
6
- CORE_DESC = "Remove all of the core (framework) files (default: false)"
7
- class_option 'rm-core', type: :boolean, default: false, desc: CORE_DESC
7
+ CORE_DESC = "Remove all of the core (framework) files (default: false)"
8
+ class_option 'rm-core', type: :boolean, default: false, desc: CORE_DESC
8
9
 
9
- APP_DESC = "Remove the application files under app/helpers/app/ and all tests (default: false)"
10
- class_option 'rm-app', type: :boolean, default: false, desc: APP_DESC
10
+ APP_DESC = "Remove the application files under app/helpers/app/ and all tests (default: false)"
11
+ class_option 'rm-app', type: :boolean, default: false, desc: APP_DESC
11
12
 
12
- SPEC_DESC = "Remove just the tests for the template core (default: false)"
13
- class_option 'rm-core-rspec', type: :boolean, default: false, desc: SPEC_DESC
13
+ SPEC_DESC = "Remove just the tests for the template core (default: false)"
14
+ class_option 'rm-core-rspec', type: :boolean, default: false, desc: SPEC_DESC
14
15
 
15
- DEST_DESC = 'The directory that the core code will be copied into'
16
- class_option :dest, type: :string, aliases: "-d", default: '', desc: DEST_DESC
16
+ DEST_DESC = 'The directory that the core code will be copied into'
17
+ class_option :dest, type: :string, aliases: "-d", default: '', desc: DEST_DESC
17
18
 
18
- source_root File.expand_path('.', __FILE__)
19
- desc
19
+ source_root File.expand_path('.', __FILE__)
20
+ desc
20
21
 
21
- def check
22
- if rm_all? or rm_core_rspec? or rm_app? or rm_core?
23
- unless yes? 'Please confirm that you are about to delete a slew of files?'
24
- exit
25
- end
26
- else
27
- generate 'templet:destroy --help'
22
+ def check
23
+ if rm_all? or rm_core_rspec? or rm_app? or rm_core?
24
+ unless yes? 'Please confirm that you are about to delete a slew of files?'
25
+ exit
26
+ end
27
+ else
28
+ generate 'templet:destroy --help'
28
29
 
29
- puts 'Note that at least one option needs to be given'
30
+ puts 'Note that at least one option needs to be given'
30
31
 
31
- exit
32
+ exit
33
+ end
32
34
  end
33
- end
34
35
 
35
- def rm_core
36
- if core_delete?
37
- rm %w(app/helpers/templet/ lib/templet/)
36
+ def rm_core
37
+ if core_delete?
38
+ rm %w(app/helpers/templet/ lib/templet/)
39
+ rm 'app/helpers/templet_helper.rb'
38
40
 
39
- if ( dest = options['dest'] ).present?
40
- rm dest
41
+ if ( dest = options['dest'] ).present?
42
+ rm dest
43
+ end
41
44
  end
42
45
  end
43
- end
44
46
 
45
- def rm_controller
46
- if core_delete?
47
- rm %w(app/controllers/templet/)
47
+ def rm_controller
48
+ if core_delete?
49
+ rm %w(app/controllers/templet/)
50
+ end
48
51
  end
49
- end
50
52
 
51
- def rm_helpers_rb
52
- if core_delete?
53
+ def rm_helpers_rb
54
+ if core_delete?
55
+ end
53
56
  end
54
- end
55
57
 
56
- def rm_app_trees
57
- if app_delete?
58
- rm %w(app/helpers/app.rb app/helpers/templet_helper.rb)
58
+ def rm_app_trees
59
+ if app_delete?
60
+ rm 'app/helpers/app.rb'
59
61
 
60
- rm 'app/helpers/app/'
62
+ rm 'app/helpers/app/'
61
63
 
62
- rm %w(spec/helpers/app/ spec/support/templet/)
64
+ rm %w(spec/helpers/app/ spec/support/templet/)
63
65
 
64
- rm %w(spec/apis/ spec/support/apis/)
66
+ rm %w(spec/apis/ spec/support/apis/)
65
67
 
66
- puts "Note that any generated controllers won't have been removed"
67
- puts " You'll have to manually delete these yourself"
68
- puts " There may also be entries in config/routes.rb"
68
+ puts "Note that any generated controllers won't have been removed"
69
+ puts " You'll have to manually delete these yourself"
70
+ puts " There may also be entries in config/routes.rb"
71
+ end
69
72
  end
70
- end
71
73
 
72
- def rm_core_rspec
73
- if rm_all? or rm_core? or rm_core_rspec?
74
- rm %w(spec/helpers/templet/)
74
+ def rm_core_rspec
75
+ if rm_all? or rm_core? or rm_core_rspec?
76
+ rm %w(spec/helpers/templet/)
75
77
 
76
- rm %w(spec/support/templet/rest_link_procs_assignments.rb
77
- spec/support/templet/rest_link_procs_helpers.rb
78
- spec/support/templet/model_parent_helpers.rb)
78
+ rm %w(spec/support/templet/rest_link_procs_assignments.rb
79
+ spec/support/templet/rest_link_procs_helpers.rb
80
+ spec/support/templet/model_parent_helpers.rb)
81
+ end
79
82
  end
80
- end
81
83
 
82
- private
84
+ private
83
85
 
84
- def rm(*paths)
85
- paths.flatten.compact.each do |path|
86
- #puts " #{exists?(path) ? '*' : '?'} #{path}"
86
+ def rm(*paths)
87
+ paths.flatten.compact.each do |path|
88
+ #puts " #{exists?(path) ? '*' : '?'} #{path}"
87
89
 
88
- remove_file path if exists?(path)
90
+ remove_file path if exists?(path)
91
+ end
89
92
  end
90
- end
91
93
 
92
- def exists?(path)
93
- if not path or path.empty?
94
- false
95
- elsif path.include?('.') or path =~ /[A-Z]/ or not path.end_with?('/')
96
- File.exists? path
97
- else
98
- Dir.exists? path
94
+ def exists?(path)
95
+ if not path or path.empty?
96
+ false
97
+ elsif path.include?('.') or path =~ /[A-Z]/ or not path.end_with?('/')
98
+ File.exists? path
99
+ else
100
+ Dir.exists? path
101
+ end
99
102
  end
100
- end
101
103
 
102
- def core_delete?
103
- rm_all? or (rm_core? and not rm_core_rspec?)
104
- end
104
+ def core_delete?
105
+ rm_all? or (rm_core? and not rm_core_rspec?)
106
+ end
105
107
 
106
- def app_delete?
107
- rm_all? or (rm_app? and not rm_core_rspec?)
108
- end
108
+ def app_delete?
109
+ rm_all? or (rm_app? and not rm_core_rspec?)
110
+ end
109
111
 
110
- def rm_core_rspec?
111
- options['rm-core-rspec']
112
- end
112
+ def rm_core_rspec?
113
+ options['rm-core-rspec']
114
+ end
113
115
 
114
- def rm_app?
115
- options['rm-app']
116
- end
116
+ def rm_app?
117
+ options['rm-app']
118
+ end
117
119
 
118
- def rm_core?
119
- options['rm-core']
120
- end
120
+ def rm_core?
121
+ options['rm-core']
122
+ end
121
123
 
122
- def rm_all?
123
- options['all']
124
+ def rm_all?
125
+ options['all']
126
+ end
124
127
  end
125
128
  end
126
129