model_base_generators 0.3.9 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (455) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/.travis.yml +8 -2
  4. data/Gemfile +1 -1
  5. data/Gemfiles/rails-5.0 +25 -0
  6. data/Gemfiles/rails-5.1 +25 -0
  7. data/README.md +2 -2
  8. data/Rakefile +10 -1
  9. data/{example → examples/rails-5.0}/.gitignore +1 -1
  10. data/{example → examples/rails-5.0}/.model_base/controllers +0 -0
  11. data/{example → examples/rails-5.0}/.rspec +0 -0
  12. data/{example → examples/rails-5.0}/.rubocop.yml +0 -0
  13. data/{example → examples/rails-5.0}/Gemfile +5 -4
  14. data/{example → examples/rails-5.0}/Gemfile.lock +87 -77
  15. data/{example → examples/rails-5.0}/Rakefile +0 -0
  16. data/{example → examples/rails-5.0}/app/assets/config/manifest.js +0 -0
  17. data/{example → examples/rails-5.0}/app/assets/images/.keep +0 -0
  18. data/{example → examples/rails-5.0}/app/assets/javascripts/application.js +0 -0
  19. data/{example → examples/rails-5.0}/app/assets/javascripts/cable.js +0 -0
  20. data/{example → examples/rails-5.0}/app/assets/javascripts/channels/.keep +0 -0
  21. data/{example → examples/rails-5.0}/app/assets/stylesheets/application.css +0 -0
  22. data/{example → examples/rails-5.0}/app/channels/application_cable/channel.rb +0 -0
  23. data/{example → examples/rails-5.0}/app/channels/application_cable/connection.rb +0 -0
  24. data/{example → examples/rails-5.0}/app/controllers/application_controller.rb +0 -0
  25. data/{example → examples/rails-5.0}/app/controllers/attached_files_controller.rb +0 -0
  26. data/{example → examples/rails-5.0}/app/controllers/concerns/.keep +0 -0
  27. data/{example → examples/rails-5.0}/app/controllers/concerns/authentication.rb +0 -0
  28. data/{example → examples/rails-5.0}/app/controllers/issue_comments_controller.rb +0 -0
  29. data/{example → examples/rails-5.0}/app/controllers/issues_controller.rb +0 -0
  30. data/{example → examples/rails-5.0}/app/controllers/phases_controller.rb +0 -0
  31. data/{example → examples/rails-5.0}/app/controllers/project_assignments_controller.rb +0 -0
  32. data/{example → examples/rails-5.0}/app/controllers/projects_controller.rb +0 -0
  33. data/{example → examples/rails-5.0}/app/helpers/application_helper.rb +0 -0
  34. data/{example → examples/rails-5.0}/app/helpers/attached_files_helper.rb +0 -0
  35. data/{example → examples/rails-5.0}/app/helpers/issue_comments_helper.rb +0 -0
  36. data/{example → examples/rails-5.0}/app/helpers/issues_helper.rb +0 -0
  37. data/{example → examples/rails-5.0}/app/helpers/phases_helper.rb +0 -0
  38. data/{example → examples/rails-5.0}/app/helpers/project_assignments_helper.rb +0 -0
  39. data/{example → examples/rails-5.0}/app/helpers/projects_helper.rb +0 -0
  40. data/{example → examples/rails-5.0}/app/jobs/application_job.rb +0 -0
  41. data/{example → examples/rails-5.0}/app/mailers/application_mailer.rb +0 -0
  42. data/{example → examples/rails-5.0}/app/models/ability.rb +0 -0
  43. data/{example → examples/rails-5.0}/app/models/application_record.rb +0 -0
  44. data/{example → examples/rails-5.0}/app/models/attached_file.rb +0 -0
  45. data/{example → examples/rails-5.0}/app/models/concerns/.keep +0 -0
  46. data/{example → examples/rails-5.0}/app/models/issue.rb +1 -1
  47. data/{example → examples/rails-5.0}/app/models/issue_comment.rb +0 -0
  48. data/{example → examples/rails-5.0}/app/models/phase.rb +0 -0
  49. data/{example → examples/rails-5.0}/app/models/project.rb +0 -0
  50. data/{example → examples/rails-5.0}/app/models/project_assignment.rb +0 -0
  51. data/{example → examples/rails-5.0}/app/models/user.rb +0 -0
  52. data/{example → examples/rails-5.0}/app/validations/ar_internal_metadatum_validation.rb +0 -0
  53. data/{example → examples/rails-5.0}/app/validations/attached_file_validation.rb +0 -0
  54. data/{example → examples/rails-5.0}/app/validations/issue_comment_validation.rb +0 -0
  55. data/{example → examples/rails-5.0}/app/validations/issue_validation.rb +0 -0
  56. data/{example → examples/rails-5.0}/app/validations/phase_validation.rb +0 -0
  57. data/{example → examples/rails-5.0}/app/validations/project_assignment_validation.rb +0 -0
  58. data/{example → examples/rails-5.0}/app/validations/project_validation.rb +0 -0
  59. data/{example → examples/rails-5.0}/app/validations/user_validation.rb +0 -0
  60. data/{example → examples/rails-5.0}/app/views/attached_files/_attached_file.json.jbuilder +0 -0
  61. data/{example → examples/rails-5.0}/app/views/attached_files/_form.html.erb +0 -0
  62. data/{example → examples/rails-5.0}/app/views/attached_files/_table.html.erb +0 -0
  63. data/{example → examples/rails-5.0}/app/views/attached_files/edit.html.erb +0 -0
  64. data/{example → examples/rails-5.0}/app/views/attached_files/index.html.erb +0 -0
  65. data/{example → examples/rails-5.0}/app/views/attached_files/index.json.jbuilder +0 -0
  66. data/{example → examples/rails-5.0}/app/views/attached_files/new.html.erb +0 -0
  67. data/{example → examples/rails-5.0}/app/views/attached_files/show.html.erb +0 -0
  68. data/{example → examples/rails-5.0}/app/views/attached_files/show.json.jbuilder +0 -0
  69. data/{example → examples/rails-5.0}/app/views/issue_comments/_form.html.erb +0 -0
  70. data/examples/rails-5.0/app/views/issue_comments/_issue_comment.json.jbuilder +2 -0
  71. data/{example → examples/rails-5.0}/app/views/issue_comments/_table.html.erb +0 -0
  72. data/{example → examples/rails-5.0}/app/views/issue_comments/edit.html.erb +0 -0
  73. data/{example → examples/rails-5.0}/app/views/issue_comments/index.html.erb +0 -0
  74. data/examples/rails-5.0/app/views/issue_comments/index.json.jbuilder +1 -0
  75. data/{example → examples/rails-5.0}/app/views/issue_comments/new.html.erb +0 -0
  76. data/{example → examples/rails-5.0}/app/views/issue_comments/show.html.erb +0 -0
  77. data/examples/rails-5.0/app/views/issue_comments/show.json.jbuilder +1 -0
  78. data/{example → examples/rails-5.0}/app/views/issues/_form.html.erb +0 -0
  79. data/examples/rails-5.0/app/views/issues/_issue.json.jbuilder +2 -0
  80. data/{example → examples/rails-5.0}/app/views/issues/_table.html.erb +0 -0
  81. data/{example → examples/rails-5.0}/app/views/issues/edit.html.erb +0 -0
  82. data/{example → examples/rails-5.0}/app/views/issues/index.html.erb +0 -0
  83. data/examples/rails-5.0/app/views/issues/index.json.jbuilder +1 -0
  84. data/{example → examples/rails-5.0}/app/views/issues/new.html.erb +0 -0
  85. data/{example → examples/rails-5.0}/app/views/issues/show.html.erb +0 -0
  86. data/examples/rails-5.0/app/views/issues/show.json.jbuilder +1 -0
  87. data/{example → examples/rails-5.0}/app/views/layouts/application.html.erb +0 -0
  88. data/{example → examples/rails-5.0}/app/views/layouts/mailer.html.erb +0 -0
  89. data/{example → examples/rails-5.0}/app/views/layouts/mailer.text.erb +0 -0
  90. data/{example → examples/rails-5.0}/app/views/phases/_form.html.erb +0 -0
  91. data/examples/rails-5.0/app/views/phases/_phase.json.jbuilder +2 -0
  92. data/{example → examples/rails-5.0}/app/views/phases/_table.html.erb +0 -0
  93. data/{example → examples/rails-5.0}/app/views/phases/edit.html.erb +0 -0
  94. data/{example → examples/rails-5.0}/app/views/phases/index.html.erb +0 -0
  95. data/examples/rails-5.0/app/views/phases/index.json.jbuilder +1 -0
  96. data/{example → examples/rails-5.0}/app/views/phases/new.html.erb +0 -0
  97. data/{example → examples/rails-5.0}/app/views/phases/show.html.erb +0 -0
  98. data/examples/rails-5.0/app/views/phases/show.json.jbuilder +1 -0
  99. data/{example → examples/rails-5.0}/app/views/project_assignments/_form.html.erb +0 -0
  100. data/examples/rails-5.0/app/views/project_assignments/_project_assignment.json.jbuilder +2 -0
  101. data/{example → examples/rails-5.0}/app/views/project_assignments/_table.html.erb +0 -0
  102. data/{example → examples/rails-5.0}/app/views/project_assignments/edit.html.erb +0 -0
  103. data/{example → examples/rails-5.0}/app/views/project_assignments/index.html.erb +0 -0
  104. data/examples/rails-5.0/app/views/project_assignments/index.json.jbuilder +1 -0
  105. data/{example → examples/rails-5.0}/app/views/project_assignments/new.html.erb +0 -0
  106. data/{example → examples/rails-5.0}/app/views/project_assignments/show.html.erb +0 -0
  107. data/examples/rails-5.0/app/views/project_assignments/show.json.jbuilder +1 -0
  108. data/{example → examples/rails-5.0}/app/views/projects/_form.html.erb +0 -0
  109. data/examples/rails-5.0/app/views/projects/_project.json.jbuilder +2 -0
  110. data/{example → examples/rails-5.0}/app/views/projects/_table.html.erb +0 -0
  111. data/{example → examples/rails-5.0}/app/views/projects/edit.html.erb +0 -0
  112. data/{example → examples/rails-5.0}/app/views/projects/index.html.erb +0 -0
  113. data/examples/rails-5.0/app/views/projects/index.json.jbuilder +1 -0
  114. data/{example → examples/rails-5.0}/app/views/projects/new.html.erb +0 -0
  115. data/{example → examples/rails-5.0}/app/views/projects/show.html.erb +0 -0
  116. data/examples/rails-5.0/app/views/projects/show.json.jbuilder +1 -0
  117. data/{example → examples/rails-5.0}/bin/bundle +0 -0
  118. data/{example → examples/rails-5.0}/bin/rails +0 -0
  119. data/{example → examples/rails-5.0}/bin/rake +0 -0
  120. data/{example → examples/rails-5.0}/bin/setup +0 -0
  121. data/{example → examples/rails-5.0}/bin/update +0 -0
  122. data/{example → examples/rails-5.0}/config.ru +0 -0
  123. data/{example → examples/rails-5.0}/config/application.rb +1 -2
  124. data/{example → examples/rails-5.0}/config/boot.rb +0 -0
  125. data/{example → examples/rails-5.0}/config/cable.yml +0 -0
  126. data/{example → examples/rails-5.0}/config/database.yml +0 -0
  127. data/{example → examples/rails-5.0}/config/environment.rb +0 -0
  128. data/{example → examples/rails-5.0}/config/environments/development.rb +0 -0
  129. data/{example → examples/rails-5.0}/config/environments/production.rb +0 -0
  130. data/{example → examples/rails-5.0}/config/environments/test.rb +0 -0
  131. data/{example → examples/rails-5.0}/config/initializers/application_controller_renderer.rb +0 -0
  132. data/{example → examples/rails-5.0}/config/initializers/assets.rb +0 -0
  133. data/{example → examples/rails-5.0}/config/initializers/backtrace_silencers.rb +0 -0
  134. data/{example → examples/rails-5.0}/config/initializers/cookies_serializer.rb +0 -0
  135. data/{example → examples/rails-5.0}/config/initializers/devise.rb +0 -0
  136. data/{example → examples/rails-5.0}/config/initializers/filter_parameter_logging.rb +0 -0
  137. data/{example → examples/rails-5.0}/config/initializers/inflections.rb +0 -0
  138. data/{example → examples/rails-5.0}/config/initializers/mime_types.rb +0 -0
  139. data/{example → examples/rails-5.0}/config/initializers/new_framework_defaults.rb +0 -0
  140. data/{example → examples/rails-5.0}/config/initializers/pretty_validation.rb +0 -0
  141. data/{example → examples/rails-5.0}/config/initializers/session_store.rb +0 -0
  142. data/{example → examples/rails-5.0}/config/initializers/wrap_parameters.rb +0 -0
  143. data/{example → examples/rails-5.0}/config/locales/devise.en.yml +0 -0
  144. data/{example → examples/rails-5.0}/config/locales/devise.ja.yml +0 -0
  145. data/{example → examples/rails-5.0}/config/locales/en.yml +0 -0
  146. data/{example → examples/rails-5.0}/config/locales/rails.ja.yml +0 -0
  147. data/{example → examples/rails-5.0}/config/puma.rb +0 -0
  148. data/{example → examples/rails-5.0}/config/routes.rb +0 -0
  149. data/{example → examples/rails-5.0}/config/secrets.yml +0 -0
  150. data/{example → examples/rails-5.0}/config/spring.rb +0 -0
  151. data/{example → examples/rails-5.0}/db/schema.rb +0 -0
  152. data/{example → examples/rails-5.0}/lib/assets/.keep +0 -0
  153. data/{example → examples/rails-5.0}/log/.keep +0 -0
  154. data/{example → examples/rails-5.0}/public/404.html +0 -0
  155. data/{example → examples/rails-5.0}/public/422.html +0 -0
  156. data/{example → examples/rails-5.0}/public/500.html +0 -0
  157. data/{example → examples/rails-5.0}/public/apple-touch-icon-precomposed.png +0 -0
  158. data/{example → examples/rails-5.0}/public/apple-touch-icon.png +0 -0
  159. data/{example → examples/rails-5.0}/public/favicon.ico +0 -0
  160. data/{example → examples/rails-5.0}/spec/controllers/attached_files_controller_spec.rb +6 -6
  161. data/{example → examples/rails-5.0}/spec/controllers/issue_comments_controller_spec.rb +5 -5
  162. data/{example → examples/rails-5.0}/spec/controllers/issues_controller_spec.rb +4 -4
  163. data/{example → examples/rails-5.0}/spec/controllers/phases_controller_spec.rb +4 -4
  164. data/{example → examples/rails-5.0}/spec/controllers/project_assignments_controller_spec.rb +4 -4
  165. data/{example → examples/rails-5.0}/spec/controllers/projects_controller_spec.rb +3 -3
  166. data/{example → examples/rails-5.0}/spec/factories/attached_files.rb +1 -1
  167. data/{example → examples/rails-5.0}/spec/factories/issue_comments.rb +1 -1
  168. data/{example → examples/rails-5.0}/spec/factories/issues.rb +1 -1
  169. data/{example → examples/rails-5.0}/spec/factories/phases.rb +1 -1
  170. data/{example → examples/rails-5.0}/spec/factories/project_assignments.rb +1 -1
  171. data/{example → examples/rails-5.0}/spec/factories/projects.rb +1 -1
  172. data/{example → examples/rails-5.0}/spec/factories/users.rb +1 -1
  173. data/{example → examples/rails-5.0}/spec/helpers/attached_files_helper_spec.rb +0 -0
  174. data/{example → examples/rails-5.0}/spec/helpers/issue_comments_helper_spec.rb +0 -0
  175. data/{example → examples/rails-5.0}/spec/helpers/issues_helper_spec.rb +0 -0
  176. data/{example → examples/rails-5.0}/spec/helpers/phases_helper_spec.rb +0 -0
  177. data/{example → examples/rails-5.0}/spec/helpers/project_assignments_helper_spec.rb +0 -0
  178. data/{example → examples/rails-5.0}/spec/helpers/projects_helper_spec.rb +0 -0
  179. data/{example → examples/rails-5.0}/spec/rails_helper.rb +0 -0
  180. data/{example → examples/rails-5.0}/spec/requests/attached_files_spec.rb +1 -1
  181. data/{example → examples/rails-5.0}/spec/requests/issue_comments_spec.rb +1 -1
  182. data/{example → examples/rails-5.0}/spec/requests/issues_spec.rb +1 -1
  183. data/{example → examples/rails-5.0}/spec/requests/phases_spec.rb +1 -1
  184. data/{example → examples/rails-5.0}/spec/requests/project_assignments_spec.rb +1 -1
  185. data/{example → examples/rails-5.0}/spec/requests/projects_spec.rb +1 -1
  186. data/{example → examples/rails-5.0}/spec/routing/attached_files_routing_spec.rb +0 -0
  187. data/{example → examples/rails-5.0}/spec/routing/issue_comments_routing_spec.rb +0 -0
  188. data/{example → examples/rails-5.0}/spec/routing/issues_routing_spec.rb +0 -0
  189. data/{example → examples/rails-5.0}/spec/routing/phases_routing_spec.rb +0 -0
  190. data/{example → examples/rails-5.0}/spec/routing/project_assignments_routing_spec.rb +0 -0
  191. data/{example → examples/rails-5.0}/spec/routing/projects_routing_spec.rb +0 -0
  192. data/{example → examples/rails-5.0}/spec/spec_helper.rb +0 -0
  193. data/{example → examples/rails-5.0}/spec/support/controller_macros.rb +2 -2
  194. data/{example → examples/rails-5.0}/spec/support/devise.rb +0 -0
  195. data/{example → examples/rails-5.0}/spec/support/field_assertions.rb +0 -0
  196. data/{example → examples/rails-5.0}/spec/support/time_match_support.rb +0 -0
  197. data/{example → examples/rails-5.0}/spec/views/attached_files/edit.html.erb_spec.rb +5 -5
  198. data/examples/rails-5.0/spec/views/attached_files/index.html.erb_spec.rb +22 -0
  199. data/{example → examples/rails-5.0}/spec/views/attached_files/new.html.erb_spec.rb +5 -5
  200. data/examples/rails-5.0/spec/views/attached_files/show.html.erb_spec.rb +19 -0
  201. data/{example → examples/rails-5.0}/spec/views/issue_comments/edit.html.erb_spec.rb +4 -4
  202. data/{example → examples/rails-5.0}/spec/views/issue_comments/index.html.erb_spec.rb +5 -5
  203. data/{example → examples/rails-5.0}/spec/views/issue_comments/new.html.erb_spec.rb +4 -4
  204. data/{example → examples/rails-5.0}/spec/views/issue_comments/show.html.erb_spec.rb +4 -4
  205. data/{example → examples/rails-5.0}/spec/views/issues/edit.html.erb_spec.rb +3 -3
  206. data/{example → examples/rails-5.0}/spec/views/issues/index.html.erb_spec.rb +4 -4
  207. data/{example → examples/rails-5.0}/spec/views/issues/new.html.erb_spec.rb +3 -3
  208. data/{example → examples/rails-5.0}/spec/views/issues/show.html.erb_spec.rb +3 -3
  209. data/{example → examples/rails-5.0}/spec/views/phases/edit.html.erb_spec.rb +3 -3
  210. data/{example → examples/rails-5.0}/spec/views/phases/index.html.erb_spec.rb +4 -4
  211. data/{example → examples/rails-5.0}/spec/views/phases/new.html.erb_spec.rb +3 -3
  212. data/{example → examples/rails-5.0}/spec/views/phases/show.html.erb_spec.rb +3 -3
  213. data/{example → examples/rails-5.0}/spec/views/project_assignments/edit.html.erb_spec.rb +3 -3
  214. data/{example → examples/rails-5.0}/spec/views/project_assignments/index.html.erb_spec.rb +4 -4
  215. data/{example → examples/rails-5.0}/spec/views/project_assignments/new.html.erb_spec.rb +3 -3
  216. data/{example → examples/rails-5.0}/spec/views/project_assignments/show.html.erb_spec.rb +3 -3
  217. data/{example → examples/rails-5.0}/spec/views/projects/edit.html.erb_spec.rb +2 -2
  218. data/{example → examples/rails-5.0}/spec/views/projects/index.html.erb_spec.rb +3 -3
  219. data/{example → examples/rails-5.0}/spec/views/projects/new.html.erb_spec.rb +2 -2
  220. data/{example → examples/rails-5.0}/spec/views/projects/show.html.erb_spec.rb +2 -2
  221. data/examples/rails-5.0/tmp/.keep +0 -0
  222. data/examples/rails-5.1/.gitignore +4 -0
  223. data/examples/rails-5.1/.model_base +1 -0
  224. data/examples/rails-5.1/.rspec +2 -0
  225. data/examples/rails-5.1/Gemfile +87 -0
  226. data/examples/rails-5.1/Gemfile.lock +361 -0
  227. data/examples/rails-5.1/README.md +24 -0
  228. data/examples/rails-5.1/Rakefile +6 -0
  229. data/examples/rails-5.1/app/assets/config/manifest.js +3 -0
  230. data/examples/rails-5.1/app/assets/images/.keep +0 -0
  231. data/examples/rails-5.1/app/assets/javascripts/application.js +15 -0
  232. data/examples/rails-5.1/app/assets/javascripts/bootstrap.js.coffee +3 -0
  233. data/examples/rails-5.1/app/assets/javascripts/cable.js +13 -0
  234. data/examples/rails-5.1/app/assets/javascripts/channels/.keep +0 -0
  235. data/examples/rails-5.1/app/assets/stylesheets/application.css +15 -0
  236. data/examples/rails-5.1/app/assets/stylesheets/bootstrap_and_overrides.css +6 -0
  237. data/examples/rails-5.1/app/channels/application_cable/channel.rb +4 -0
  238. data/examples/rails-5.1/app/channels/application_cable/connection.rb +4 -0
  239. data/examples/rails-5.1/app/controllers/application_controller.rb +3 -0
  240. data/examples/rails-5.1/app/controllers/attached_files_controller.rb +63 -0
  241. data/examples/rails-5.1/app/controllers/concerns/.keep +0 -0
  242. data/examples/rails-5.1/app/controllers/concerns/authentication.rb +13 -0
  243. data/examples/rails-5.1/app/controllers/issue_comments_controller.rb +63 -0
  244. data/examples/rails-5.1/app/controllers/issues_controller.rb +63 -0
  245. data/examples/rails-5.1/app/controllers/phases_controller.rb +63 -0
  246. data/examples/rails-5.1/app/controllers/project_assignments_controller.rb +63 -0
  247. data/examples/rails-5.1/app/controllers/projects_controller.rb +63 -0
  248. data/examples/rails-5.1/app/helpers/application_helper.rb +2 -0
  249. data/examples/rails-5.1/app/helpers/attached_files_helper.rb +3 -0
  250. data/examples/rails-5.1/app/helpers/issue_comments_helper.rb +3 -0
  251. data/examples/rails-5.1/app/helpers/issues_helper.rb +3 -0
  252. data/examples/rails-5.1/app/helpers/phases_helper.rb +3 -0
  253. data/examples/rails-5.1/app/helpers/project_assignments_helper.rb +3 -0
  254. data/examples/rails-5.1/app/helpers/projects_helper.rb +3 -0
  255. data/examples/rails-5.1/app/jobs/application_job.rb +2 -0
  256. data/examples/rails-5.1/app/mailers/application_mailer.rb +4 -0
  257. data/examples/rails-5.1/app/models +1 -0
  258. data/examples/rails-5.1/app/validations +1 -0
  259. data/examples/rails-5.1/app/views/attached_files/_attached_file.json.jbuilder +2 -0
  260. data/examples/rails-5.1/app/views/attached_files/_form.html.erb +48 -0
  261. data/examples/rails-5.1/app/views/attached_files/_table.html.erb +31 -0
  262. data/examples/rails-5.1/app/views/attached_files/edit.html.erb +5 -0
  263. data/examples/rails-5.1/app/views/attached_files/index.html.erb +9 -0
  264. data/examples/rails-5.1/app/views/attached_files/index.json.jbuilder +1 -0
  265. data/examples/rails-5.1/app/views/attached_files/new.html.erb +5 -0
  266. data/examples/rails-5.1/app/views/attached_files/show.html.erb +27 -0
  267. data/examples/rails-5.1/app/views/attached_files/show.json.jbuilder +1 -0
  268. data/examples/rails-5.1/app/views/issue_comments/_form.html.erb +55 -0
  269. data/{example → examples/rails-5.1}/app/views/issue_comments/_issue_comment.json.jbuilder +0 -0
  270. data/examples/rails-5.1/app/views/issue_comments/_table.html.erb +33 -0
  271. data/examples/rails-5.1/app/views/issue_comments/edit.html.erb +5 -0
  272. data/examples/rails-5.1/app/views/issue_comments/index.html.erb +9 -0
  273. data/{example → examples/rails-5.1}/app/views/issue_comments/index.json.jbuilder +0 -0
  274. data/examples/rails-5.1/app/views/issue_comments/new.html.erb +5 -0
  275. data/examples/rails-5.1/app/views/issue_comments/show.html.erb +29 -0
  276. data/examples/rails-5.1/app/views/issue_comments/show.json.jbuilder +1 -0
  277. data/examples/rails-5.1/app/views/issues/_form.html.erb +62 -0
  278. data/examples/rails-5.1/app/views/issues/_issue.json.jbuilder +2 -0
  279. data/examples/rails-5.1/app/views/issues/_table.html.erb +35 -0
  280. data/examples/rails-5.1/app/views/issues/edit.html.erb +5 -0
  281. data/examples/rails-5.1/app/views/issues/index.html.erb +9 -0
  282. data/examples/rails-5.1/app/views/issues/index.json.jbuilder +1 -0
  283. data/examples/rails-5.1/app/views/issues/new.html.erb +5 -0
  284. data/examples/rails-5.1/app/views/issues/show.html.erb +31 -0
  285. data/examples/rails-5.1/app/views/issues/show.json.jbuilder +1 -0
  286. data/examples/rails-5.1/app/views/kaminari/_first_page.html.erb +3 -0
  287. data/examples/rails-5.1/app/views/kaminari/_gap.html.erb +3 -0
  288. data/examples/rails-5.1/app/views/kaminari/_last_page.html.erb +3 -0
  289. data/examples/rails-5.1/app/views/kaminari/_next_page.html.erb +3 -0
  290. data/examples/rails-5.1/app/views/kaminari/_page.html.erb +9 -0
  291. data/examples/rails-5.1/app/views/kaminari/_paginator.html.erb +15 -0
  292. data/examples/rails-5.1/app/views/kaminari/_prev_page.html.erb +3 -0
  293. data/examples/rails-5.1/app/views/layouts/application.html.erb +65 -0
  294. data/examples/rails-5.1/app/views/layouts/mailer.html.erb +13 -0
  295. data/examples/rails-5.1/app/views/layouts/mailer.text.erb +1 -0
  296. data/examples/rails-5.1/app/views/phases/_form.html.erb +55 -0
  297. data/examples/rails-5.1/app/views/phases/_phase.json.jbuilder +2 -0
  298. data/examples/rails-5.1/app/views/phases/_table.html.erb +31 -0
  299. data/examples/rails-5.1/app/views/phases/edit.html.erb +5 -0
  300. data/examples/rails-5.1/app/views/phases/index.html.erb +9 -0
  301. data/examples/rails-5.1/app/views/phases/index.json.jbuilder +1 -0
  302. data/examples/rails-5.1/app/views/phases/new.html.erb +5 -0
  303. data/examples/rails-5.1/app/views/phases/show.html.erb +25 -0
  304. data/examples/rails-5.1/app/views/phases/show.json.jbuilder +1 -0
  305. data/examples/rails-5.1/app/views/project_assignments/_form.html.erb +62 -0
  306. data/examples/rails-5.1/app/views/project_assignments/_project_assignment.json.jbuilder +2 -0
  307. data/examples/rails-5.1/app/views/project_assignments/_table.html.erb +35 -0
  308. data/examples/rails-5.1/app/views/project_assignments/edit.html.erb +5 -0
  309. data/examples/rails-5.1/app/views/project_assignments/index.html.erb +9 -0
  310. data/examples/rails-5.1/app/views/project_assignments/index.json.jbuilder +1 -0
  311. data/examples/rails-5.1/app/views/project_assignments/new.html.erb +5 -0
  312. data/examples/rails-5.1/app/views/project_assignments/show.html.erb +29 -0
  313. data/examples/rails-5.1/app/views/project_assignments/show.json.jbuilder +1 -0
  314. data/examples/rails-5.1/app/views/projects/_form.html.erb +48 -0
  315. data/examples/rails-5.1/app/views/projects/_project.json.jbuilder +2 -0
  316. data/examples/rails-5.1/app/views/projects/_table.html.erb +29 -0
  317. data/examples/rails-5.1/app/views/projects/edit.html.erb +5 -0
  318. data/examples/rails-5.1/app/views/projects/index.html.erb +9 -0
  319. data/examples/rails-5.1/app/views/projects/index.json.jbuilder +1 -0
  320. data/examples/rails-5.1/app/views/projects/new.html.erb +5 -0
  321. data/examples/rails-5.1/app/views/projects/show.html.erb +23 -0
  322. data/examples/rails-5.1/app/views/projects/show.json.jbuilder +1 -0
  323. data/examples/rails-5.1/bin/bundle +3 -0
  324. data/examples/rails-5.1/bin/rails +9 -0
  325. data/examples/rails-5.1/bin/rake +9 -0
  326. data/examples/rails-5.1/bin/setup +38 -0
  327. data/examples/rails-5.1/bin/spring +17 -0
  328. data/examples/rails-5.1/bin/update +29 -0
  329. data/examples/rails-5.1/bin/yarn +11 -0
  330. data/examples/rails-5.1/config.ru +5 -0
  331. data/examples/rails-5.1/config/application.rb +31 -0
  332. data/examples/rails-5.1/config/boot.rb +3 -0
  333. data/examples/rails-5.1/config/cable.yml +10 -0
  334. data/examples/rails-5.1/config/database.yml +25 -0
  335. data/examples/rails-5.1/config/environment.rb +5 -0
  336. data/examples/rails-5.1/config/environments/development.rb +79 -0
  337. data/examples/rails-5.1/config/environments/production.rb +91 -0
  338. data/examples/rails-5.1/config/environments/test.rb +42 -0
  339. data/examples/rails-5.1/config/initializers/application_controller_renderer.rb +8 -0
  340. data/examples/rails-5.1/config/initializers/assets.rb +14 -0
  341. data/examples/rails-5.1/config/initializers/backtrace_silencers.rb +7 -0
  342. data/examples/rails-5.1/config/initializers/cookies_serializer.rb +5 -0
  343. data/examples/rails-5.1/config/initializers/devise.rb +279 -0
  344. data/examples/rails-5.1/config/initializers/filter_parameter_logging.rb +4 -0
  345. data/examples/rails-5.1/config/initializers/inflections.rb +16 -0
  346. data/examples/rails-5.1/config/initializers/mime_types.rb +4 -0
  347. data/examples/rails-5.1/config/initializers/wrap_parameters.rb +14 -0
  348. data/examples/rails-5.1/config/locales/devise.en.yml +64 -0
  349. data/examples/rails-5.1/config/locales/en.bootstrap.yml +23 -0
  350. data/examples/rails-5.1/config/locales/en.yml +33 -0
  351. data/examples/rails-5.1/config/locales/ja.devise.yml +60 -0
  352. data/examples/rails-5.1/config/locales/ja.yml +205 -0
  353. data/examples/rails-5.1/config/puma.rb +56 -0
  354. data/examples/rails-5.1/config/routes.rb +10 -0
  355. data/examples/rails-5.1/config/secrets.yml +32 -0
  356. data/examples/rails-5.1/config/spring.rb +6 -0
  357. data/examples/rails-5.1/db/schema.rb +1 -0
  358. data/examples/rails-5.1/lib/assets/.keep +0 -0
  359. data/examples/rails-5.1/lib/tasks/.keep +0 -0
  360. data/examples/rails-5.1/log/.keep +0 -0
  361. data/examples/rails-5.1/package.json +5 -0
  362. data/examples/rails-5.1/public/404.html +67 -0
  363. data/examples/rails-5.1/public/422.html +67 -0
  364. data/examples/rails-5.1/public/500.html +66 -0
  365. data/examples/rails-5.1/public/apple-touch-icon-precomposed.png +0 -0
  366. data/examples/rails-5.1/public/apple-touch-icon.png +0 -0
  367. data/examples/rails-5.1/public/favicon.ico +0 -0
  368. data/examples/rails-5.1/public/robots.txt +1 -0
  369. data/examples/rails-5.1/spec/controllers/attached_files_controller_spec.rb +181 -0
  370. data/examples/rails-5.1/spec/controllers/issue_comments_controller_spec.rb +179 -0
  371. data/examples/rails-5.1/spec/controllers/issues_controller_spec.rb +181 -0
  372. data/examples/rails-5.1/spec/controllers/phases_controller_spec.rb +183 -0
  373. data/examples/rails-5.1/spec/controllers/project_assignments_controller_spec.rb +178 -0
  374. data/examples/rails-5.1/spec/controllers/projects_controller_spec.rb +180 -0
  375. data/examples/rails-5.1/spec/factories +1 -0
  376. data/examples/rails-5.1/spec/helpers/attached_files_helper_spec.rb +15 -0
  377. data/examples/rails-5.1/spec/helpers/issue_comments_helper_spec.rb +15 -0
  378. data/examples/rails-5.1/spec/helpers/issues_helper_spec.rb +15 -0
  379. data/examples/rails-5.1/spec/helpers/phases_helper_spec.rb +15 -0
  380. data/examples/rails-5.1/spec/helpers/project_assignments_helper_spec.rb +15 -0
  381. data/examples/rails-5.1/spec/helpers/projects_helper_spec.rb +15 -0
  382. data/examples/rails-5.1/spec/models/user_spec.rb +5 -0
  383. data/examples/rails-5.1/spec/rails_helper.rb +69 -0
  384. data/examples/rails-5.1/spec/requests/attached_files_spec.rb +14 -0
  385. data/examples/rails-5.1/spec/requests/issue_comments_spec.rb +14 -0
  386. data/examples/rails-5.1/spec/requests/issues_spec.rb +14 -0
  387. data/examples/rails-5.1/spec/requests/phases_spec.rb +14 -0
  388. data/examples/rails-5.1/spec/requests/project_assignments_spec.rb +14 -0
  389. data/examples/rails-5.1/spec/requests/projects_spec.rb +14 -0
  390. data/examples/rails-5.1/spec/routing/attached_files_routing_spec.rb +38 -0
  391. data/examples/rails-5.1/spec/routing/issue_comments_routing_spec.rb +38 -0
  392. data/examples/rails-5.1/spec/routing/issues_routing_spec.rb +38 -0
  393. data/examples/rails-5.1/spec/routing/phases_routing_spec.rb +38 -0
  394. data/examples/rails-5.1/spec/routing/project_assignments_routing_spec.rb +38 -0
  395. data/examples/rails-5.1/spec/routing/projects_routing_spec.rb +38 -0
  396. data/examples/rails-5.1/spec/spec_helper.rb +96 -0
  397. data/examples/rails-5.1/spec/support/controller_macros.rb +19 -0
  398. data/examples/rails-5.1/spec/support/devise.rb +19 -0
  399. data/examples/rails-5.1/spec/support/field_assertions.rb +6 -0
  400. data/examples/rails-5.1/spec/support/time_match_support.rb +10 -0
  401. data/examples/rails-5.1/spec/views/attached_files/edit.html.erb_spec.rb +23 -0
  402. data/examples/rails-5.1/spec/views/attached_files/index.html.erb_spec.rb +22 -0
  403. data/examples/rails-5.1/spec/views/attached_files/new.html.erb_spec.rb +23 -0
  404. data/examples/rails-5.1/spec/views/attached_files/show.html.erb_spec.rb +19 -0
  405. data/examples/rails-5.1/spec/views/issue_comments/edit.html.erb_spec.rb +23 -0
  406. data/examples/rails-5.1/spec/views/issue_comments/index.html.erb_spec.rb +22 -0
  407. data/examples/rails-5.1/spec/views/issue_comments/new.html.erb_spec.rb +23 -0
  408. data/examples/rails-5.1/spec/views/issue_comments/show.html.erb_spec.rb +19 -0
  409. data/examples/rails-5.1/spec/views/issues/edit.html.erb_spec.rb +23 -0
  410. data/examples/rails-5.1/spec/views/issues/index.html.erb_spec.rb +23 -0
  411. data/examples/rails-5.1/spec/views/issues/new.html.erb_spec.rb +23 -0
  412. data/examples/rails-5.1/spec/views/issues/show.html.erb_spec.rb +20 -0
  413. data/examples/rails-5.1/spec/views/phases/edit.html.erb_spec.rb +22 -0
  414. data/examples/rails-5.1/spec/views/phases/index.html.erb_spec.rb +22 -0
  415. data/examples/rails-5.1/spec/views/phases/new.html.erb_spec.rb +22 -0
  416. data/examples/rails-5.1/spec/views/phases/show.html.erb_spec.rb +19 -0
  417. data/examples/rails-5.1/spec/views/project_assignments/edit.html.erb_spec.rb +23 -0
  418. data/examples/rails-5.1/spec/views/project_assignments/index.html.erb_spec.rb +21 -0
  419. data/examples/rails-5.1/spec/views/project_assignments/new.html.erb_spec.rb +23 -0
  420. data/examples/rails-5.1/spec/views/project_assignments/show.html.erb_spec.rb +19 -0
  421. data/examples/rails-5.1/spec/views/projects/edit.html.erb_spec.rb +20 -0
  422. data/examples/rails-5.1/spec/views/projects/index.html.erb_spec.rb +20 -0
  423. data/examples/rails-5.1/spec/views/projects/new.html.erb_spec.rb +20 -0
  424. data/examples/rails-5.1/spec/views/projects/show.html.erb_spec.rb +17 -0
  425. data/examples/rails-5.1/test/application_system_test_case.rb +5 -0
  426. data/examples/rails-5.1/test/controllers/.keep +0 -0
  427. data/examples/rails-5.1/test/fixtures/.keep +0 -0
  428. data/examples/rails-5.1/test/fixtures/files/.keep +0 -0
  429. data/examples/rails-5.1/test/helpers/.keep +0 -0
  430. data/examples/rails-5.1/test/integration/.keep +0 -0
  431. data/examples/rails-5.1/test/mailers/.keep +0 -0
  432. data/examples/rails-5.1/test/models/.keep +0 -0
  433. data/examples/rails-5.1/test/system/.keep +0 -0
  434. data/examples/rails-5.1/test/test_helper.rb +9 -0
  435. data/examples/rails-5.1/tmp/.keep +0 -0
  436. data/examples/rails-5.1/vendor/.keep +0 -0
  437. data/lib/generators/model_base/templates/spec/factories/users.rb +1 -1
  438. data/lib/generators/model_base/templates/spec/support/controller_macros.rb +2 -2
  439. data/lib/model_base/generators.rb +4 -4
  440. data/lib/model_base/generators/{factory_girl → factory_bot}/model.rb +8 -8
  441. data/lib/model_base/meta_model.rb +12 -12
  442. data/lib/model_base/version.rb +1 -1
  443. data/lib/templates/{factory_girl → factory_bot}/factory.rb +2 -2
  444. data/lib/templates/rspec/integration/request_spec.rb +1 -1
  445. data/lib/templates/rspec/scaffold/controller_spec.rb +3 -3
  446. data/lib/templates/rspec/scaffold/edit_spec.rb +2 -2
  447. data/lib/templates/rspec/scaffold/index_spec.rb +3 -3
  448. data/lib/templates/rspec/scaffold/new_spec.rb +2 -2
  449. data/lib/templates/rspec/scaffold/show_spec.rb +2 -2
  450. data/model_base_generators.gemspec +1 -0
  451. data/rails_template.rb +26 -10
  452. metadata +435 -206
  453. data/example/app/views/issue_comments/show.json.jbuilder +0 -1
  454. data/example/spec/views/attached_files/index.html.erb_spec.rb +0 -22
  455. data/example/spec/views/attached_files/show.html.erb_spec.rb +0 -19
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe 'project_assignments/index', type: :view do
5
+ let(:user) { FactoryBot.create(:user) }
6
+ let(:project) { FactoryBot.create(:project, owner: user) }
7
+ before(:each) do
8
+ assign(:project_assignments, [
9
+ FactoryBot.create(:project_assignment, project: project, user: user),
10
+ FactoryBot.create(:project_assignment, project: project, user: user),
11
+ ])
12
+ end
13
+
14
+ it 'renders a list of project_assignments' do
15
+ render
16
+ assert_select 'tr>td', text: 'project1', count: 2
17
+ assert_select 'tr>td', text: 'user1@example.com', count: 2
18
+ assert_select 'tr>td', text: localize(Time.zone.parse('2020-03-22 09:50:00 +09:00')), count: 2
19
+ assert_select 'tr>td', text: localize(Time.zone.parse('2020-03-22 23:40:00 +09:00')), count: 2
20
+ end
21
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe 'project_assignments/new', type: :view do
5
+ let(:user) { FactoryBot.create(:user) }
6
+ let(:project) { FactoryBot.create(:project, owner: user) }
7
+ let(:project_assignment) { FactoryBot.build(:project_assignment, project: project, user: user) }
8
+ before(:each) do
9
+ assign(:project_assignment, project_assignment)
10
+ end
11
+
12
+ it 'renders new project_assignment form' do
13
+ render
14
+
15
+ assert_select 'form[action=?][method=?]', project_assignments_path, 'post' do
16
+ assert_select 'input#project_assignment_id[name=?]', 'project_assignment[id]'
17
+ assert_select 'select#project_assignment_project_id[name=?]', 'project_assignment[project_id]'
18
+ assert_select 'select#project_assignment_user_id[name=?]', 'project_assignment[user_id]'
19
+ assert_select_datetime_field :project_assignment, :started_at
20
+ assert_select_datetime_field :project_assignment, :finished_at
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe 'project_assignments/show', type: :view do
5
+ let(:user) { FactoryBot.create(:user) }
6
+ let(:project) { FactoryBot.create(:project, owner: user) }
7
+ let(:project_assignment) { FactoryBot.create(:project_assignment, project: project, user: user) }
8
+ before(:each) do
9
+ assign(:project_assignment, project_assignment)
10
+ end
11
+
12
+ it 'renders attributes in <p>' do
13
+ render
14
+ expect(rendered).to match(/project1/)
15
+ expect(rendered).to match(/user1@example.com/)
16
+ expect(rendered).to match(localized_time_re('2020-03-22 09:50:00 +09:00'))
17
+ expect(rendered).to match(localized_time_re('2020-03-22 23:40:00 +09:00'))
18
+ end
19
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe 'projects/edit', type: :view do
5
+ let(:user) { FactoryBot.create(:user) }
6
+ let(:project) { FactoryBot.create(:project, owner: user) }
7
+ before(:each) do
8
+ assign(:project, project)
9
+ end
10
+
11
+ it 'renders the edit project form' do
12
+ render
13
+
14
+ assert_select 'form[action=?][method=?]', project_path(project), 'post' do
15
+ assert_select 'select#project_owner_id[name=?]', 'project[owner_id]'
16
+ assert_select 'input#project_name[name=?]', 'project[name]'
17
+ assert_select 'input#project_closed[name=?]', 'project[closed]'
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe 'projects/index', type: :view do
5
+ let(:user) { FactoryBot.create(:user) }
6
+ before(:each) do
7
+ assign(:projects, [
8
+ FactoryBot.create(:project, owner: user, name: 'project1'),
9
+ FactoryBot.create(:project, owner: user, name: 'project2'),
10
+ ])
11
+ end
12
+
13
+ it 'renders a list of projects' do
14
+ render
15
+ assert_select 'tr>td', text: 'user1@example.com', count: 2
16
+ assert_select 'tr>td', text: 'project1', count: 1
17
+ assert_select 'tr>td', text: 'project2', count: 1
18
+ assert_select 'tr>td', text: 'false', count: 2
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe 'projects/new', type: :view do
5
+ let(:user) { FactoryBot.create(:user) }
6
+ let(:project) { FactoryBot.build(:project, owner: user) }
7
+ before(:each) do
8
+ assign(:project, project)
9
+ end
10
+
11
+ it 'renders new project form' do
12
+ render
13
+
14
+ assert_select 'form[action=?][method=?]', projects_path, 'post' do
15
+ assert_select 'select#project_owner_id[name=?]', 'project[owner_id]'
16
+ assert_select 'input#project_name[name=?]', 'project[name]'
17
+ assert_select 'input#project_closed[name=?]', 'project[closed]'
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+ require 'rails_helper'
3
+
4
+ RSpec.describe 'projects/show', type: :view do
5
+ let(:user) { FactoryBot.create(:user) }
6
+ let(:project) { FactoryBot.create(:project, owner: user) }
7
+ before(:each) do
8
+ assign(:project, project)
9
+ end
10
+
11
+ it 'renders attributes in <p>' do
12
+ render
13
+ expect(rendered).to match(/user1@example.com/)
14
+ expect(rendered).to match(/project1/)
15
+ expect(rendered).to match(/false/)
16
+ end
17
+ end
@@ -0,0 +1,5 @@
1
+ require "test_helper"
2
+
3
+ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
4
+ driven_by :selenium, using: :chrome, screen_size: [1400, 1400]
5
+ end
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,9 @@
1
+ require File.expand_path('../../config/environment', __FILE__)
2
+ require 'rails/test_help'
3
+
4
+ class ActiveSupport::TestCase
5
+ # Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order.
6
+ fixtures :all
7
+
8
+ # Add more helper methods to be used by all tests here...
9
+ end
File without changes
File without changes
@@ -1,7 +1,7 @@
1
1
  <%- unless ModelBase.config.frozen_string_literal.nil? -%>
2
2
  # frozen_string_literal: <%= ModelBase.config.frozen_string_literal.inspect %>
3
3
  <%- end -%>
4
- FactoryGirl.define do
4
+ FactoryBot.define do
5
5
  factory :user do
6
6
  email 'user1@example.com'
7
7
  before(:create) do |u|
@@ -12,10 +12,10 @@ module ControllerMacros
12
12
  end
13
13
 
14
14
  def login_admin
15
- before(:each) { devise_login(:admin, FactoryGirl.create(:admin)) }
15
+ before(:each) { devise_login(:admin, FactoryBot.create(:admin)) }
16
16
  end
17
17
 
18
18
  def login_user
19
- before(:each) { devise_login(:user, FactoryGirl.create(:user)) }
19
+ before(:each) { devise_login(:user, FactoryBot.create(:user)) }
20
20
  end
21
21
  end
@@ -8,8 +8,8 @@ module ModelBase
8
8
  autoload :Scaffold, 'model_base/generators/erb/scaffold'
9
9
  end
10
10
 
11
- module FactoryGirl
12
- autoload :Model, 'model_base/generators/factory_girl/model'
11
+ module FactoryBot
12
+ autoload :Model, 'model_base/generators/factory_bot/model'
13
13
  end
14
14
 
15
15
  module Rails
@@ -21,10 +21,10 @@ module ModelBase
21
21
  ::Rails::Generators::NamedBase.prepend(ModelSupport)
22
22
  templates_dir = File::expand_path('../../templates', __FILE__)
23
23
  ::Rails::Generators.templates_path.unshift(templates_dir)
24
- ::Rails::Generators.lookup(["rails:scaffold_controller"])
24
+ ::Rails::Generators.send(:lookup, ["rails:scaffold_controller"])
25
25
  ::Rails::Generators::ScaffoldControllerGenerator.source_paths.unshift(templates_dir)
26
26
  Erb::Scaffold.enable!
27
- FactoryGirl::Model.enable!
27
+ FactoryBot::Model.enable!
28
28
  Rails::ScaffoldController.enable!
29
29
  end
30
30
  end
@@ -1,23 +1,23 @@
1
1
  require "model_base"
2
2
 
3
- require 'generators/factory_girl/model/model_generator'
3
+ require 'generators/factory_bot/model/model_generator'
4
4
 
5
5
  module ModelBase
6
6
  module Generators
7
- module FactoryGirl
7
+ module FactoryBot
8
8
 
9
9
  module Model
10
10
  def self.enable!
11
- ::FactoryGirl::Generators::ModelGenerator.prepend(self)
12
- ::FactoryGirl::Generators::ModelGenerator.extend(ClassMethod)
13
- ::FactoryGirl::Generators::ModelGenerator.instance_eval do
14
- source_root File.expand_path("../../../../templates/factory_girl", __FILE__)
11
+ ::FactoryBot::Generators::ModelGenerator.prepend(self)
12
+ ::FactoryBot::Generators::ModelGenerator.extend(ClassMethod)
13
+ ::FactoryBot::Generators::ModelGenerator.instance_eval do
14
+ source_root File.expand_path("../../../../templates/factory_bot", __FILE__)
15
15
  end
16
16
  end
17
17
 
18
18
  module ClassMethod
19
- # To overwrite `source_root` again, which is overwritten by factory_girl_rails
20
- # https://github.com/thoughtbot/factory_girl_rails/blob/master/lib/generators/factory_girl.rb#L6-L8
19
+ # To overwrite `source_root` again, which is overwritten by factory_bot_rails
20
+ # https://github.com/thoughtbot/factory_bot_rails/blob/master/lib/generators/factory_bot.rb#L6-L8
21
21
  # https://github.com/rails/rails/blob/master/railties/lib/rails/generators/base.rb#L22-L26
22
22
  def source_root(path=nil)
23
23
  @_source_root = path if path
@@ -111,35 +111,35 @@ module ModelBase
111
111
  dependencies.values.map{|m| [m] + m.all_dependencies(required)}.flatten.uniq(&:name)
112
112
  end
113
113
 
114
- def factory_girl_options
114
+ def factory_bot_options
115
115
  dependencies.map{|attr, model| "#{attr}: #{model.full_resource_name}" }
116
116
  end
117
117
 
118
- def factory_girl_method(name, extra)
118
+ def factory_bot_method(name, extra)
119
119
  extra_str = extra.blank? ? '' : ', ' << extra.map{|k,v| "#{k}: '#{v}'"}.join(', ')
120
- options = factory_girl_options
121
- options_str = options.empty? ? '' : ', ' << factory_girl_options.join(', ')
122
- 'FactoryGirl.%s(:%s%s%s)' % [name, full_resource_name, options_str, extra_str]
120
+ options = factory_bot_options
121
+ options_str = options.empty? ? '' : ', ' << factory_bot_options.join(', ')
122
+ 'FactoryBot.%s(:%s%s%s)' % [name, full_resource_name, options_str, extra_str]
123
123
  end
124
124
 
125
- def factory_girl_to(name, context: nil, index: 1, extra: {})
125
+ def factory_bot_to(name, context: nil, index: 1, extra: {})
126
126
  case context
127
127
  when :spec_index
128
128
  columns_for(:spec_index).delete_if(&:single_sample_only?).delete_if(&:reference).each do |col|
129
129
  extra[col.name] = col.sample_value(index)
130
130
  end
131
131
  end
132
- factory_girl_method(name, extra)
132
+ factory_bot_method(name, extra)
133
133
  end
134
134
 
135
- def factory_girl_let_definition(action: :create)
136
- 'let(:%s) { %s }' % [full_resource_name, factory_girl_to(action)]
135
+ def factory_bot_let_definition(action: :create)
136
+ 'let(:%s) { %s }' % [full_resource_name, factory_bot_to(action)]
137
137
  end
138
138
 
139
- def factory_girl_let_definitions(spacer = " ")
139
+ def factory_bot_let_definitions(spacer = " ")
140
140
  deps = all_dependencies
141
- r = deps.reverse.map(&:factory_girl_let_definition)
142
- r << "let(:user){ FactoryGirl.create(:user) }" unless deps.any?{|m| m.full_resource_name == 'user' }
141
+ r = deps.reverse.map(&:factory_bot_let_definition)
142
+ r << "let(:user){ FactoryBot.create(:user) }" unless deps.any?{|m| m.full_resource_name == 'user' }
143
143
  r.join("\n" << spacer)
144
144
  end
145
145
 
@@ -1,3 +1,3 @@
1
1
  module ModelBase
2
- VERSION = "0.3.9"
2
+ VERSION = "0.4.0"
3
3
  end
@@ -3,7 +3,7 @@
3
3
  <%- end -%>
4
4
  <%- columns = model.columns_for(:factory) rescue nil-%>
5
5
  <%- if columns -%>
6
- FactoryGirl.define do
6
+ FactoryBot.define do
7
7
  factory :<%= model.full_resource_name %> do
8
8
  <%- model.columns_for(:factory).each do |col| -%>
9
9
  <%- if col.reference -%>
@@ -19,7 +19,7 @@ FactoryGirl.define do
19
19
  end
20
20
  end
21
21
  <%- else -%>
22
- FactoryGirl.define do
22
+ FactoryBot.define do
23
23
  factory :<%= singular_table_name %><%= explicit_class_option %> do
24
24
  <%- attributes.map do |attribute| -%>
25
25
  <%= attribute.name %> <%= attribute.default.inspect %>
@@ -4,7 +4,7 @@
4
4
  require 'rails_helper'
5
5
 
6
6
  RSpec.describe '<%= class_name.pluralize %>', <%= type_metatag(:request) %> do
7
- let(:user) { FactoryGirl.create(:user) }
7
+ let(:user) { FactoryBot.create(:user) }
8
8
  before { login_as(user, scope: :user) }
9
9
 
10
10
  describe 'GET /<%= table_name %>' do
@@ -32,21 +32,21 @@ RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:control
32
32
  required_ref_attrs = model.columns_for(:params).select{|attr| attr.reference && attr.required? }
33
33
  required_data_attrs = model.columns_for(:params).select{|attr| !attr.reference && attr.required? }
34
34
  -%>
35
- <%= model.factory_girl_let_definitions %>
35
+ <%= model.factory_bot_let_definitions %>
36
36
  <%-
37
37
  unless required_ref_attrs.empty?
38
38
  extra_attributes_to_merge = ".merge(%s)" % required_ref_attrs.map{|attr| "#{attr.name}: #{attr.ref_model.full_resource_name}.id"}.join(', ')
39
39
  extra_attributes_for_factory = ", %s" % required_ref_attrs.map{|attr| "#{attr.reference.name}: #{attr.ref_model.full_resource_name}"}.join(', ')
40
40
  end
41
41
  -%>
42
- let(:<%= file_name %>) { FactoryGirl.create(:<%= file_name %><%= extra_attributes_for_factory %>) }
42
+ let(:<%= file_name %>) { FactoryBot.create(:<%= file_name %><%= extra_attributes_for_factory %>) }
43
43
  before { devise_user_login(user) }
44
44
 
45
45
  # This should return the minimal set of attributes required to create a valid
46
46
  # <%= class_name %>. As you add validations to <%= class_name %>, be sure to
47
47
  # adjust the attributes here as well.
48
48
  let(:valid_parameters) do
49
- FactoryGirl.attributes_for(:<%= file_name %>)<%= extra_attributes_to_merge %>
49
+ FactoryBot.attributes_for(:<%= file_name %>)<%= extra_attributes_to_merge %>
50
50
  end
51
51
 
52
52
  let(:invalid_parameters) do
@@ -4,8 +4,8 @@
4
4
  require 'rails_helper'
5
5
 
6
6
  RSpec.describe '<%= ns_table_name %>/edit', <%= type_metatag(:view) %> do
7
- <%= model.factory_girl_let_definitions %>
8
- <%= model.factory_girl_let_definition %>
7
+ <%= model.factory_bot_let_definitions %>
8
+ <%= model.factory_bot_let_definition %>
9
9
  before(:each) do
10
10
  assign(:<%= model.full_resource_name %>, <%= model.full_resource_name %>)
11
11
  end
@@ -5,14 +5,14 @@ require 'rails_helper'
5
5
 
6
6
  <% output_attributes = model.columns.reject{|attribute| [:datetime, :timestamp, :time, :date].index(attribute.type) } -%>
7
7
  RSpec.describe '<%= ns_table_name %>/index', <%= type_metatag(:view) %> do
8
- <%= model.factory_girl_let_definitions %>
8
+ <%= model.factory_bot_let_definitions %>
9
9
  before(:each) do
10
10
  assign(:<%= table_name %>, [
11
11
  <% [1,2].each_with_index do |id, model_index| -%>
12
12
  <%- if tc = model.title_column -%>
13
- <%= model.factory_girl_to(:create, extra: {tc.name.to_sym => tc.sample_value(model_index + 1)}) %>,
13
+ <%= model.factory_bot_to(:create, extra: {tc.name.to_sym => tc.sample_value(model_index + 1)}) %>,
14
14
  <%- else -%>
15
- <%= model.factory_girl_to(:create, context: :spec_index, index: id, ) %>,
15
+ <%= model.factory_bot_to(:create, context: :spec_index, index: id, ) %>,
16
16
  <%- end -%>
17
17
  <% end -%>
18
18
  ])
@@ -5,8 +5,8 @@ require 'rails_helper'
5
5
 
6
6
  <% output_attributes = model.columns.reject{|attribute| [:datetime, :timestamp, :time, :date].index(attribute.type) } -%>
7
7
  RSpec.describe '<%= ns_table_name %>/new', <%= type_metatag(:view) %> do
8
- <%= model.factory_girl_let_definitions %>
9
- <%= model.factory_girl_let_definition(action: :build) %>
8
+ <%= model.factory_bot_let_definitions %>
9
+ <%= model.factory_bot_let_definition(action: :build) %>
10
10
  before(:each) do
11
11
  assign(:<%= model.full_resource_name %>, <%= model.full_resource_name %>)
12
12
  end
@@ -4,8 +4,8 @@
4
4
  require 'rails_helper'
5
5
 
6
6
  RSpec.describe '<%= ns_table_name %>/show', <%= type_metatag(:view) %> do
7
- <%= model.factory_girl_let_definitions %>
8
- <%= model.factory_girl_let_definition %>
7
+ <%= model.factory_bot_let_definitions %>
8
+ <%= model.factory_bot_let_definition %>
9
9
  before(:each) do
10
10
  assign(:<%= model.full_resource_name %>, <%= model.full_resource_name %>)
11
11
  end
@@ -21,6 +21,7 @@ Gem::Specification.new do |spec|
21
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
22
  spec.require_paths = ["lib"]
23
23
 
24
+ # When you add dependency, add them to Gemfiles/*
24
25
  spec.add_runtime_dependency "rails"
25
26
 
26
27
  spec.add_development_dependency "bundler", "~> 1.13"