model_base_generators 0.3.9 → 0.4.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.
- checksums.yaml +4 -4
- data/.gitignore +2 -0
- data/.travis.yml +8 -2
- data/Gemfile +1 -1
- data/Gemfiles/rails-5.0 +25 -0
- data/Gemfiles/rails-5.1 +25 -0
- data/README.md +2 -2
- data/Rakefile +10 -1
- data/{example → examples/rails-5.0}/.gitignore +1 -1
- data/{example → examples/rails-5.0}/.model_base/controllers +0 -0
- data/{example → examples/rails-5.0}/.rspec +0 -0
- data/{example → examples/rails-5.0}/.rubocop.yml +0 -0
- data/{example → examples/rails-5.0}/Gemfile +5 -4
- data/{example → examples/rails-5.0}/Gemfile.lock +87 -77
- data/{example → examples/rails-5.0}/Rakefile +0 -0
- data/{example → examples/rails-5.0}/app/assets/config/manifest.js +0 -0
- data/{example → examples/rails-5.0}/app/assets/images/.keep +0 -0
- data/{example → examples/rails-5.0}/app/assets/javascripts/application.js +0 -0
- data/{example → examples/rails-5.0}/app/assets/javascripts/cable.js +0 -0
- data/{example → examples/rails-5.0}/app/assets/javascripts/channels/.keep +0 -0
- data/{example → examples/rails-5.0}/app/assets/stylesheets/application.css +0 -0
- data/{example → examples/rails-5.0}/app/channels/application_cable/channel.rb +0 -0
- data/{example → examples/rails-5.0}/app/channels/application_cable/connection.rb +0 -0
- data/{example → examples/rails-5.0}/app/controllers/application_controller.rb +0 -0
- data/{example → examples/rails-5.0}/app/controllers/attached_files_controller.rb +0 -0
- data/{example → examples/rails-5.0}/app/controllers/concerns/.keep +0 -0
- data/{example → examples/rails-5.0}/app/controllers/concerns/authentication.rb +0 -0
- data/{example → examples/rails-5.0}/app/controllers/issue_comments_controller.rb +0 -0
- data/{example → examples/rails-5.0}/app/controllers/issues_controller.rb +0 -0
- data/{example → examples/rails-5.0}/app/controllers/phases_controller.rb +0 -0
- data/{example → examples/rails-5.0}/app/controllers/project_assignments_controller.rb +0 -0
- data/{example → examples/rails-5.0}/app/controllers/projects_controller.rb +0 -0
- data/{example → examples/rails-5.0}/app/helpers/application_helper.rb +0 -0
- data/{example → examples/rails-5.0}/app/helpers/attached_files_helper.rb +0 -0
- data/{example → examples/rails-5.0}/app/helpers/issue_comments_helper.rb +0 -0
- data/{example → examples/rails-5.0}/app/helpers/issues_helper.rb +0 -0
- data/{example → examples/rails-5.0}/app/helpers/phases_helper.rb +0 -0
- data/{example → examples/rails-5.0}/app/helpers/project_assignments_helper.rb +0 -0
- data/{example → examples/rails-5.0}/app/helpers/projects_helper.rb +0 -0
- data/{example → examples/rails-5.0}/app/jobs/application_job.rb +0 -0
- data/{example → examples/rails-5.0}/app/mailers/application_mailer.rb +0 -0
- data/{example → examples/rails-5.0}/app/models/ability.rb +0 -0
- data/{example → examples/rails-5.0}/app/models/application_record.rb +0 -0
- data/{example → examples/rails-5.0}/app/models/attached_file.rb +0 -0
- data/{example → examples/rails-5.0}/app/models/concerns/.keep +0 -0
- data/{example → examples/rails-5.0}/app/models/issue.rb +1 -1
- data/{example → examples/rails-5.0}/app/models/issue_comment.rb +0 -0
- data/{example → examples/rails-5.0}/app/models/phase.rb +0 -0
- data/{example → examples/rails-5.0}/app/models/project.rb +0 -0
- data/{example → examples/rails-5.0}/app/models/project_assignment.rb +0 -0
- data/{example → examples/rails-5.0}/app/models/user.rb +0 -0
- data/{example → examples/rails-5.0}/app/validations/ar_internal_metadatum_validation.rb +0 -0
- data/{example → examples/rails-5.0}/app/validations/attached_file_validation.rb +0 -0
- data/{example → examples/rails-5.0}/app/validations/issue_comment_validation.rb +0 -0
- data/{example → examples/rails-5.0}/app/validations/issue_validation.rb +0 -0
- data/{example → examples/rails-5.0}/app/validations/phase_validation.rb +0 -0
- data/{example → examples/rails-5.0}/app/validations/project_assignment_validation.rb +0 -0
- data/{example → examples/rails-5.0}/app/validations/project_validation.rb +0 -0
- data/{example → examples/rails-5.0}/app/validations/user_validation.rb +0 -0
- data/{example → examples/rails-5.0}/app/views/attached_files/_attached_file.json.jbuilder +0 -0
- data/{example → examples/rails-5.0}/app/views/attached_files/_form.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/attached_files/_table.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/attached_files/edit.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/attached_files/index.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/attached_files/index.json.jbuilder +0 -0
- data/{example → examples/rails-5.0}/app/views/attached_files/new.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/attached_files/show.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/attached_files/show.json.jbuilder +0 -0
- data/{example → examples/rails-5.0}/app/views/issue_comments/_form.html.erb +0 -0
- data/examples/rails-5.0/app/views/issue_comments/_issue_comment.json.jbuilder +2 -0
- data/{example → examples/rails-5.0}/app/views/issue_comments/_table.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/issue_comments/edit.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/issue_comments/index.html.erb +0 -0
- data/examples/rails-5.0/app/views/issue_comments/index.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/app/views/issue_comments/new.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/issue_comments/show.html.erb +0 -0
- data/examples/rails-5.0/app/views/issue_comments/show.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/app/views/issues/_form.html.erb +0 -0
- data/examples/rails-5.0/app/views/issues/_issue.json.jbuilder +2 -0
- data/{example → examples/rails-5.0}/app/views/issues/_table.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/issues/edit.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/issues/index.html.erb +0 -0
- data/examples/rails-5.0/app/views/issues/index.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/app/views/issues/new.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/issues/show.html.erb +0 -0
- data/examples/rails-5.0/app/views/issues/show.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/app/views/layouts/application.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/layouts/mailer.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/layouts/mailer.text.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/phases/_form.html.erb +0 -0
- data/examples/rails-5.0/app/views/phases/_phase.json.jbuilder +2 -0
- data/{example → examples/rails-5.0}/app/views/phases/_table.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/phases/edit.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/phases/index.html.erb +0 -0
- data/examples/rails-5.0/app/views/phases/index.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/app/views/phases/new.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/phases/show.html.erb +0 -0
- data/examples/rails-5.0/app/views/phases/show.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/app/views/project_assignments/_form.html.erb +0 -0
- data/examples/rails-5.0/app/views/project_assignments/_project_assignment.json.jbuilder +2 -0
- data/{example → examples/rails-5.0}/app/views/project_assignments/_table.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/project_assignments/edit.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/project_assignments/index.html.erb +0 -0
- data/examples/rails-5.0/app/views/project_assignments/index.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/app/views/project_assignments/new.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/project_assignments/show.html.erb +0 -0
- data/examples/rails-5.0/app/views/project_assignments/show.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/app/views/projects/_form.html.erb +0 -0
- data/examples/rails-5.0/app/views/projects/_project.json.jbuilder +2 -0
- data/{example → examples/rails-5.0}/app/views/projects/_table.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/projects/edit.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/projects/index.html.erb +0 -0
- data/examples/rails-5.0/app/views/projects/index.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/app/views/projects/new.html.erb +0 -0
- data/{example → examples/rails-5.0}/app/views/projects/show.html.erb +0 -0
- data/examples/rails-5.0/app/views/projects/show.json.jbuilder +1 -0
- data/{example → examples/rails-5.0}/bin/bundle +0 -0
- data/{example → examples/rails-5.0}/bin/rails +0 -0
- data/{example → examples/rails-5.0}/bin/rake +0 -0
- data/{example → examples/rails-5.0}/bin/setup +0 -0
- data/{example → examples/rails-5.0}/bin/update +0 -0
- data/{example → examples/rails-5.0}/config.ru +0 -0
- data/{example → examples/rails-5.0}/config/application.rb +1 -2
- data/{example → examples/rails-5.0}/config/boot.rb +0 -0
- data/{example → examples/rails-5.0}/config/cable.yml +0 -0
- data/{example → examples/rails-5.0}/config/database.yml +0 -0
- data/{example → examples/rails-5.0}/config/environment.rb +0 -0
- data/{example → examples/rails-5.0}/config/environments/development.rb +0 -0
- data/{example → examples/rails-5.0}/config/environments/production.rb +0 -0
- data/{example → examples/rails-5.0}/config/environments/test.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/application_controller_renderer.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/assets.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/backtrace_silencers.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/cookies_serializer.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/devise.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/filter_parameter_logging.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/inflections.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/mime_types.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/new_framework_defaults.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/pretty_validation.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/session_store.rb +0 -0
- data/{example → examples/rails-5.0}/config/initializers/wrap_parameters.rb +0 -0
- data/{example → examples/rails-5.0}/config/locales/devise.en.yml +0 -0
- data/{example → examples/rails-5.0}/config/locales/devise.ja.yml +0 -0
- data/{example → examples/rails-5.0}/config/locales/en.yml +0 -0
- data/{example → examples/rails-5.0}/config/locales/rails.ja.yml +0 -0
- data/{example → examples/rails-5.0}/config/puma.rb +0 -0
- data/{example → examples/rails-5.0}/config/routes.rb +0 -0
- data/{example → examples/rails-5.0}/config/secrets.yml +0 -0
- data/{example → examples/rails-5.0}/config/spring.rb +0 -0
- data/{example → examples/rails-5.0}/db/schema.rb +0 -0
- data/{example → examples/rails-5.0}/lib/assets/.keep +0 -0
- data/{example → examples/rails-5.0}/log/.keep +0 -0
- data/{example → examples/rails-5.0}/public/404.html +0 -0
- data/{example → examples/rails-5.0}/public/422.html +0 -0
- data/{example → examples/rails-5.0}/public/500.html +0 -0
- data/{example → examples/rails-5.0}/public/apple-touch-icon-precomposed.png +0 -0
- data/{example → examples/rails-5.0}/public/apple-touch-icon.png +0 -0
- data/{example → examples/rails-5.0}/public/favicon.ico +0 -0
- data/{example → examples/rails-5.0}/spec/controllers/attached_files_controller_spec.rb +6 -6
- data/{example → examples/rails-5.0}/spec/controllers/issue_comments_controller_spec.rb +5 -5
- data/{example → examples/rails-5.0}/spec/controllers/issues_controller_spec.rb +4 -4
- data/{example → examples/rails-5.0}/spec/controllers/phases_controller_spec.rb +4 -4
- data/{example → examples/rails-5.0}/spec/controllers/project_assignments_controller_spec.rb +4 -4
- data/{example → examples/rails-5.0}/spec/controllers/projects_controller_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/factories/attached_files.rb +1 -1
- data/{example → examples/rails-5.0}/spec/factories/issue_comments.rb +1 -1
- data/{example → examples/rails-5.0}/spec/factories/issues.rb +1 -1
- data/{example → examples/rails-5.0}/spec/factories/phases.rb +1 -1
- data/{example → examples/rails-5.0}/spec/factories/project_assignments.rb +1 -1
- data/{example → examples/rails-5.0}/spec/factories/projects.rb +1 -1
- data/{example → examples/rails-5.0}/spec/factories/users.rb +1 -1
- data/{example → examples/rails-5.0}/spec/helpers/attached_files_helper_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/helpers/issue_comments_helper_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/helpers/issues_helper_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/helpers/phases_helper_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/helpers/project_assignments_helper_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/helpers/projects_helper_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/rails_helper.rb +0 -0
- data/{example → examples/rails-5.0}/spec/requests/attached_files_spec.rb +1 -1
- data/{example → examples/rails-5.0}/spec/requests/issue_comments_spec.rb +1 -1
- data/{example → examples/rails-5.0}/spec/requests/issues_spec.rb +1 -1
- data/{example → examples/rails-5.0}/spec/requests/phases_spec.rb +1 -1
- data/{example → examples/rails-5.0}/spec/requests/project_assignments_spec.rb +1 -1
- data/{example → examples/rails-5.0}/spec/requests/projects_spec.rb +1 -1
- data/{example → examples/rails-5.0}/spec/routing/attached_files_routing_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/routing/issue_comments_routing_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/routing/issues_routing_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/routing/phases_routing_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/routing/project_assignments_routing_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/routing/projects_routing_spec.rb +0 -0
- data/{example → examples/rails-5.0}/spec/spec_helper.rb +0 -0
- data/{example → examples/rails-5.0}/spec/support/controller_macros.rb +2 -2
- data/{example → examples/rails-5.0}/spec/support/devise.rb +0 -0
- data/{example → examples/rails-5.0}/spec/support/field_assertions.rb +0 -0
- data/{example → examples/rails-5.0}/spec/support/time_match_support.rb +0 -0
- data/{example → examples/rails-5.0}/spec/views/attached_files/edit.html.erb_spec.rb +5 -5
- data/examples/rails-5.0/spec/views/attached_files/index.html.erb_spec.rb +22 -0
- data/{example → examples/rails-5.0}/spec/views/attached_files/new.html.erb_spec.rb +5 -5
- data/examples/rails-5.0/spec/views/attached_files/show.html.erb_spec.rb +19 -0
- data/{example → examples/rails-5.0}/spec/views/issue_comments/edit.html.erb_spec.rb +4 -4
- data/{example → examples/rails-5.0}/spec/views/issue_comments/index.html.erb_spec.rb +5 -5
- data/{example → examples/rails-5.0}/spec/views/issue_comments/new.html.erb_spec.rb +4 -4
- data/{example → examples/rails-5.0}/spec/views/issue_comments/show.html.erb_spec.rb +4 -4
- data/{example → examples/rails-5.0}/spec/views/issues/edit.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/issues/index.html.erb_spec.rb +4 -4
- data/{example → examples/rails-5.0}/spec/views/issues/new.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/issues/show.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/phases/edit.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/phases/index.html.erb_spec.rb +4 -4
- data/{example → examples/rails-5.0}/spec/views/phases/new.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/phases/show.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/project_assignments/edit.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/project_assignments/index.html.erb_spec.rb +4 -4
- data/{example → examples/rails-5.0}/spec/views/project_assignments/new.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/project_assignments/show.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/projects/edit.html.erb_spec.rb +2 -2
- data/{example → examples/rails-5.0}/spec/views/projects/index.html.erb_spec.rb +3 -3
- data/{example → examples/rails-5.0}/spec/views/projects/new.html.erb_spec.rb +2 -2
- data/{example → examples/rails-5.0}/spec/views/projects/show.html.erb_spec.rb +2 -2
- data/examples/rails-5.0/tmp/.keep +0 -0
- data/examples/rails-5.1/.gitignore +4 -0
- data/examples/rails-5.1/.model_base +1 -0
- data/examples/rails-5.1/.rspec +2 -0
- data/examples/rails-5.1/Gemfile +87 -0
- data/examples/rails-5.1/Gemfile.lock +361 -0
- data/examples/rails-5.1/README.md +24 -0
- data/examples/rails-5.1/Rakefile +6 -0
- data/examples/rails-5.1/app/assets/config/manifest.js +3 -0
- data/examples/rails-5.1/app/assets/images/.keep +0 -0
- data/examples/rails-5.1/app/assets/javascripts/application.js +15 -0
- data/examples/rails-5.1/app/assets/javascripts/bootstrap.js.coffee +3 -0
- data/examples/rails-5.1/app/assets/javascripts/cable.js +13 -0
- data/examples/rails-5.1/app/assets/javascripts/channels/.keep +0 -0
- data/examples/rails-5.1/app/assets/stylesheets/application.css +15 -0
- data/examples/rails-5.1/app/assets/stylesheets/bootstrap_and_overrides.css +6 -0
- data/examples/rails-5.1/app/channels/application_cable/channel.rb +4 -0
- data/examples/rails-5.1/app/channels/application_cable/connection.rb +4 -0
- data/examples/rails-5.1/app/controllers/application_controller.rb +3 -0
- data/examples/rails-5.1/app/controllers/attached_files_controller.rb +63 -0
- data/examples/rails-5.1/app/controllers/concerns/.keep +0 -0
- data/examples/rails-5.1/app/controllers/concerns/authentication.rb +13 -0
- data/examples/rails-5.1/app/controllers/issue_comments_controller.rb +63 -0
- data/examples/rails-5.1/app/controllers/issues_controller.rb +63 -0
- data/examples/rails-5.1/app/controllers/phases_controller.rb +63 -0
- data/examples/rails-5.1/app/controllers/project_assignments_controller.rb +63 -0
- data/examples/rails-5.1/app/controllers/projects_controller.rb +63 -0
- data/examples/rails-5.1/app/helpers/application_helper.rb +2 -0
- data/examples/rails-5.1/app/helpers/attached_files_helper.rb +3 -0
- data/examples/rails-5.1/app/helpers/issue_comments_helper.rb +3 -0
- data/examples/rails-5.1/app/helpers/issues_helper.rb +3 -0
- data/examples/rails-5.1/app/helpers/phases_helper.rb +3 -0
- data/examples/rails-5.1/app/helpers/project_assignments_helper.rb +3 -0
- data/examples/rails-5.1/app/helpers/projects_helper.rb +3 -0
- data/examples/rails-5.1/app/jobs/application_job.rb +2 -0
- data/examples/rails-5.1/app/mailers/application_mailer.rb +4 -0
- data/examples/rails-5.1/app/models +1 -0
- data/examples/rails-5.1/app/validations +1 -0
- data/examples/rails-5.1/app/views/attached_files/_attached_file.json.jbuilder +2 -0
- data/examples/rails-5.1/app/views/attached_files/_form.html.erb +48 -0
- data/examples/rails-5.1/app/views/attached_files/_table.html.erb +31 -0
- data/examples/rails-5.1/app/views/attached_files/edit.html.erb +5 -0
- data/examples/rails-5.1/app/views/attached_files/index.html.erb +9 -0
- data/examples/rails-5.1/app/views/attached_files/index.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/attached_files/new.html.erb +5 -0
- data/examples/rails-5.1/app/views/attached_files/show.html.erb +27 -0
- data/examples/rails-5.1/app/views/attached_files/show.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/issue_comments/_form.html.erb +55 -0
- data/{example → examples/rails-5.1}/app/views/issue_comments/_issue_comment.json.jbuilder +0 -0
- data/examples/rails-5.1/app/views/issue_comments/_table.html.erb +33 -0
- data/examples/rails-5.1/app/views/issue_comments/edit.html.erb +5 -0
- data/examples/rails-5.1/app/views/issue_comments/index.html.erb +9 -0
- data/{example → examples/rails-5.1}/app/views/issue_comments/index.json.jbuilder +0 -0
- data/examples/rails-5.1/app/views/issue_comments/new.html.erb +5 -0
- data/examples/rails-5.1/app/views/issue_comments/show.html.erb +29 -0
- data/examples/rails-5.1/app/views/issue_comments/show.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/issues/_form.html.erb +62 -0
- data/examples/rails-5.1/app/views/issues/_issue.json.jbuilder +2 -0
- data/examples/rails-5.1/app/views/issues/_table.html.erb +35 -0
- data/examples/rails-5.1/app/views/issues/edit.html.erb +5 -0
- data/examples/rails-5.1/app/views/issues/index.html.erb +9 -0
- data/examples/rails-5.1/app/views/issues/index.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/issues/new.html.erb +5 -0
- data/examples/rails-5.1/app/views/issues/show.html.erb +31 -0
- data/examples/rails-5.1/app/views/issues/show.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/kaminari/_first_page.html.erb +3 -0
- data/examples/rails-5.1/app/views/kaminari/_gap.html.erb +3 -0
- data/examples/rails-5.1/app/views/kaminari/_last_page.html.erb +3 -0
- data/examples/rails-5.1/app/views/kaminari/_next_page.html.erb +3 -0
- data/examples/rails-5.1/app/views/kaminari/_page.html.erb +9 -0
- data/examples/rails-5.1/app/views/kaminari/_paginator.html.erb +15 -0
- data/examples/rails-5.1/app/views/kaminari/_prev_page.html.erb +3 -0
- data/examples/rails-5.1/app/views/layouts/application.html.erb +65 -0
- data/examples/rails-5.1/app/views/layouts/mailer.html.erb +13 -0
- data/examples/rails-5.1/app/views/layouts/mailer.text.erb +1 -0
- data/examples/rails-5.1/app/views/phases/_form.html.erb +55 -0
- data/examples/rails-5.1/app/views/phases/_phase.json.jbuilder +2 -0
- data/examples/rails-5.1/app/views/phases/_table.html.erb +31 -0
- data/examples/rails-5.1/app/views/phases/edit.html.erb +5 -0
- data/examples/rails-5.1/app/views/phases/index.html.erb +9 -0
- data/examples/rails-5.1/app/views/phases/index.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/phases/new.html.erb +5 -0
- data/examples/rails-5.1/app/views/phases/show.html.erb +25 -0
- data/examples/rails-5.1/app/views/phases/show.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/project_assignments/_form.html.erb +62 -0
- data/examples/rails-5.1/app/views/project_assignments/_project_assignment.json.jbuilder +2 -0
- data/examples/rails-5.1/app/views/project_assignments/_table.html.erb +35 -0
- data/examples/rails-5.1/app/views/project_assignments/edit.html.erb +5 -0
- data/examples/rails-5.1/app/views/project_assignments/index.html.erb +9 -0
- data/examples/rails-5.1/app/views/project_assignments/index.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/project_assignments/new.html.erb +5 -0
- data/examples/rails-5.1/app/views/project_assignments/show.html.erb +29 -0
- data/examples/rails-5.1/app/views/project_assignments/show.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/projects/_form.html.erb +48 -0
- data/examples/rails-5.1/app/views/projects/_project.json.jbuilder +2 -0
- data/examples/rails-5.1/app/views/projects/_table.html.erb +29 -0
- data/examples/rails-5.1/app/views/projects/edit.html.erb +5 -0
- data/examples/rails-5.1/app/views/projects/index.html.erb +9 -0
- data/examples/rails-5.1/app/views/projects/index.json.jbuilder +1 -0
- data/examples/rails-5.1/app/views/projects/new.html.erb +5 -0
- data/examples/rails-5.1/app/views/projects/show.html.erb +23 -0
- data/examples/rails-5.1/app/views/projects/show.json.jbuilder +1 -0
- data/examples/rails-5.1/bin/bundle +3 -0
- data/examples/rails-5.1/bin/rails +9 -0
- data/examples/rails-5.1/bin/rake +9 -0
- data/examples/rails-5.1/bin/setup +38 -0
- data/examples/rails-5.1/bin/spring +17 -0
- data/examples/rails-5.1/bin/update +29 -0
- data/examples/rails-5.1/bin/yarn +11 -0
- data/examples/rails-5.1/config.ru +5 -0
- data/examples/rails-5.1/config/application.rb +31 -0
- data/examples/rails-5.1/config/boot.rb +3 -0
- data/examples/rails-5.1/config/cable.yml +10 -0
- data/examples/rails-5.1/config/database.yml +25 -0
- data/examples/rails-5.1/config/environment.rb +5 -0
- data/examples/rails-5.1/config/environments/development.rb +79 -0
- data/examples/rails-5.1/config/environments/production.rb +91 -0
- data/examples/rails-5.1/config/environments/test.rb +42 -0
- data/examples/rails-5.1/config/initializers/application_controller_renderer.rb +8 -0
- data/examples/rails-5.1/config/initializers/assets.rb +14 -0
- data/examples/rails-5.1/config/initializers/backtrace_silencers.rb +7 -0
- data/examples/rails-5.1/config/initializers/cookies_serializer.rb +5 -0
- data/examples/rails-5.1/config/initializers/devise.rb +279 -0
- data/examples/rails-5.1/config/initializers/filter_parameter_logging.rb +4 -0
- data/examples/rails-5.1/config/initializers/inflections.rb +16 -0
- data/examples/rails-5.1/config/initializers/mime_types.rb +4 -0
- data/examples/rails-5.1/config/initializers/wrap_parameters.rb +14 -0
- data/examples/rails-5.1/config/locales/devise.en.yml +64 -0
- data/examples/rails-5.1/config/locales/en.bootstrap.yml +23 -0
- data/examples/rails-5.1/config/locales/en.yml +33 -0
- data/examples/rails-5.1/config/locales/ja.devise.yml +60 -0
- data/examples/rails-5.1/config/locales/ja.yml +205 -0
- data/examples/rails-5.1/config/puma.rb +56 -0
- data/examples/rails-5.1/config/routes.rb +10 -0
- data/examples/rails-5.1/config/secrets.yml +32 -0
- data/examples/rails-5.1/config/spring.rb +6 -0
- data/examples/rails-5.1/db/schema.rb +1 -0
- data/examples/rails-5.1/lib/assets/.keep +0 -0
- data/examples/rails-5.1/lib/tasks/.keep +0 -0
- data/examples/rails-5.1/log/.keep +0 -0
- data/examples/rails-5.1/package.json +5 -0
- data/examples/rails-5.1/public/404.html +67 -0
- data/examples/rails-5.1/public/422.html +67 -0
- data/examples/rails-5.1/public/500.html +66 -0
- data/examples/rails-5.1/public/apple-touch-icon-precomposed.png +0 -0
- data/examples/rails-5.1/public/apple-touch-icon.png +0 -0
- data/examples/rails-5.1/public/favicon.ico +0 -0
- data/examples/rails-5.1/public/robots.txt +1 -0
- data/examples/rails-5.1/spec/controllers/attached_files_controller_spec.rb +181 -0
- data/examples/rails-5.1/spec/controllers/issue_comments_controller_spec.rb +179 -0
- data/examples/rails-5.1/spec/controllers/issues_controller_spec.rb +181 -0
- data/examples/rails-5.1/spec/controllers/phases_controller_spec.rb +183 -0
- data/examples/rails-5.1/spec/controllers/project_assignments_controller_spec.rb +178 -0
- data/examples/rails-5.1/spec/controllers/projects_controller_spec.rb +180 -0
- data/examples/rails-5.1/spec/factories +1 -0
- data/examples/rails-5.1/spec/helpers/attached_files_helper_spec.rb +15 -0
- data/examples/rails-5.1/spec/helpers/issue_comments_helper_spec.rb +15 -0
- data/examples/rails-5.1/spec/helpers/issues_helper_spec.rb +15 -0
- data/examples/rails-5.1/spec/helpers/phases_helper_spec.rb +15 -0
- data/examples/rails-5.1/spec/helpers/project_assignments_helper_spec.rb +15 -0
- data/examples/rails-5.1/spec/helpers/projects_helper_spec.rb +15 -0
- data/examples/rails-5.1/spec/models/user_spec.rb +5 -0
- data/examples/rails-5.1/spec/rails_helper.rb +69 -0
- data/examples/rails-5.1/spec/requests/attached_files_spec.rb +14 -0
- data/examples/rails-5.1/spec/requests/issue_comments_spec.rb +14 -0
- data/examples/rails-5.1/spec/requests/issues_spec.rb +14 -0
- data/examples/rails-5.1/spec/requests/phases_spec.rb +14 -0
- data/examples/rails-5.1/spec/requests/project_assignments_spec.rb +14 -0
- data/examples/rails-5.1/spec/requests/projects_spec.rb +14 -0
- data/examples/rails-5.1/spec/routing/attached_files_routing_spec.rb +38 -0
- data/examples/rails-5.1/spec/routing/issue_comments_routing_spec.rb +38 -0
- data/examples/rails-5.1/spec/routing/issues_routing_spec.rb +38 -0
- data/examples/rails-5.1/spec/routing/phases_routing_spec.rb +38 -0
- data/examples/rails-5.1/spec/routing/project_assignments_routing_spec.rb +38 -0
- data/examples/rails-5.1/spec/routing/projects_routing_spec.rb +38 -0
- data/examples/rails-5.1/spec/spec_helper.rb +96 -0
- data/examples/rails-5.1/spec/support/controller_macros.rb +19 -0
- data/examples/rails-5.1/spec/support/devise.rb +19 -0
- data/examples/rails-5.1/spec/support/field_assertions.rb +6 -0
- data/examples/rails-5.1/spec/support/time_match_support.rb +10 -0
- data/examples/rails-5.1/spec/views/attached_files/edit.html.erb_spec.rb +23 -0
- data/examples/rails-5.1/spec/views/attached_files/index.html.erb_spec.rb +22 -0
- data/examples/rails-5.1/spec/views/attached_files/new.html.erb_spec.rb +23 -0
- data/examples/rails-5.1/spec/views/attached_files/show.html.erb_spec.rb +19 -0
- data/examples/rails-5.1/spec/views/issue_comments/edit.html.erb_spec.rb +23 -0
- data/examples/rails-5.1/spec/views/issue_comments/index.html.erb_spec.rb +22 -0
- data/examples/rails-5.1/spec/views/issue_comments/new.html.erb_spec.rb +23 -0
- data/examples/rails-5.1/spec/views/issue_comments/show.html.erb_spec.rb +19 -0
- data/examples/rails-5.1/spec/views/issues/edit.html.erb_spec.rb +23 -0
- data/examples/rails-5.1/spec/views/issues/index.html.erb_spec.rb +23 -0
- data/examples/rails-5.1/spec/views/issues/new.html.erb_spec.rb +23 -0
- data/examples/rails-5.1/spec/views/issues/show.html.erb_spec.rb +20 -0
- data/examples/rails-5.1/spec/views/phases/edit.html.erb_spec.rb +22 -0
- data/examples/rails-5.1/spec/views/phases/index.html.erb_spec.rb +22 -0
- data/examples/rails-5.1/spec/views/phases/new.html.erb_spec.rb +22 -0
- data/examples/rails-5.1/spec/views/phases/show.html.erb_spec.rb +19 -0
- data/examples/rails-5.1/spec/views/project_assignments/edit.html.erb_spec.rb +23 -0
- data/examples/rails-5.1/spec/views/project_assignments/index.html.erb_spec.rb +21 -0
- data/examples/rails-5.1/spec/views/project_assignments/new.html.erb_spec.rb +23 -0
- data/examples/rails-5.1/spec/views/project_assignments/show.html.erb_spec.rb +19 -0
- data/examples/rails-5.1/spec/views/projects/edit.html.erb_spec.rb +20 -0
- data/examples/rails-5.1/spec/views/projects/index.html.erb_spec.rb +20 -0
- data/examples/rails-5.1/spec/views/projects/new.html.erb_spec.rb +20 -0
- data/examples/rails-5.1/spec/views/projects/show.html.erb_spec.rb +17 -0
- data/examples/rails-5.1/test/application_system_test_case.rb +5 -0
- data/examples/rails-5.1/test/controllers/.keep +0 -0
- data/examples/rails-5.1/test/fixtures/.keep +0 -0
- data/examples/rails-5.1/test/fixtures/files/.keep +0 -0
- data/examples/rails-5.1/test/helpers/.keep +0 -0
- data/examples/rails-5.1/test/integration/.keep +0 -0
- data/examples/rails-5.1/test/mailers/.keep +0 -0
- data/examples/rails-5.1/test/models/.keep +0 -0
- data/examples/rails-5.1/test/system/.keep +0 -0
- data/examples/rails-5.1/test/test_helper.rb +9 -0
- data/examples/rails-5.1/tmp/.keep +0 -0
- data/examples/rails-5.1/vendor/.keep +0 -0
- data/lib/generators/model_base/templates/spec/factories/users.rb +1 -1
- data/lib/generators/model_base/templates/spec/support/controller_macros.rb +2 -2
- data/lib/model_base/generators.rb +4 -4
- data/lib/model_base/generators/{factory_girl → factory_bot}/model.rb +8 -8
- data/lib/model_base/meta_model.rb +12 -12
- data/lib/model_base/version.rb +1 -1
- data/lib/templates/{factory_girl → factory_bot}/factory.rb +2 -2
- data/lib/templates/rspec/integration/request_spec.rb +1 -1
- data/lib/templates/rspec/scaffold/controller_spec.rb +3 -3
- data/lib/templates/rspec/scaffold/edit_spec.rb +2 -2
- data/lib/templates/rspec/scaffold/index_spec.rb +3 -3
- data/lib/templates/rspec/scaffold/new_spec.rb +2 -2
- data/lib/templates/rspec/scaffold/show_spec.rb +2 -2
- data/model_base_generators.gemspec +1 -0
- data/rails_template.rb +26 -10
- metadata +435 -206
- data/example/app/views/issue_comments/show.json.jbuilder +0 -1
- data/example/spec/views/attached_files/index.html.erb_spec.rb +0 -22
- data/example/spec/views/attached_files/show.html.erb_spec.rb +0 -19
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
require 'rails_helper'
|
|
3
|
+
|
|
4
|
+
# This spec was generated by rspec-rails when you ran the scaffold generator.
|
|
5
|
+
# It demonstrates how one might use RSpec to specify the controller code that
|
|
6
|
+
# was generated by Rails when you ran the scaffold generator.
|
|
7
|
+
#
|
|
8
|
+
# It assumes that the implementation code is generated by the rails scaffold
|
|
9
|
+
# generator. If you are using any extension libraries to generate different
|
|
10
|
+
# controller code, this generated spec may or may not pass.
|
|
11
|
+
#
|
|
12
|
+
# It only uses APIs available in rails and/or rspec-rails. There are a number
|
|
13
|
+
# of tools you can use to make these specs even more expressive, but we're
|
|
14
|
+
# sticking to rails and rspec-rails APIs to keep things simple and stable.
|
|
15
|
+
#
|
|
16
|
+
# Compared to earlier versions of this generator, there is very limited use of
|
|
17
|
+
# stubs and message expectations in this spec. Stubs are only used when there
|
|
18
|
+
# is no simpler way to get a handle on the object needed for the example.
|
|
19
|
+
# Message expectations are only used when there is no simpler way to specify
|
|
20
|
+
# that an instance is receiving a specific message.
|
|
21
|
+
|
|
22
|
+
RSpec.describe IssueCommentsController, type: :controller do
|
|
23
|
+
let(:user) { FactoryBot.create(:user) }
|
|
24
|
+
let(:project) { FactoryBot.create(:project, owner: user) }
|
|
25
|
+
let(:issue) { FactoryBot.create(:issue, project: project, creator: user) }
|
|
26
|
+
let(:issue_comment) { FactoryBot.create(:issue_comment, issue: issue, user: user) }
|
|
27
|
+
before { devise_user_login(user) }
|
|
28
|
+
|
|
29
|
+
# This should return the minimal set of attributes required to create a valid
|
|
30
|
+
# IssueComment. As you add validations to IssueComment, be sure to
|
|
31
|
+
# adjust the attributes here as well.
|
|
32
|
+
let(:valid_parameters) do
|
|
33
|
+
FactoryBot.attributes_for(:issue_comment).merge(issue_id: issue.id, user_id: user.id)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
let(:invalid_parameters) do
|
|
37
|
+
skip('Add a hash of attributes invalid for your model')
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# This should return the minimal set of values that should be in the session
|
|
41
|
+
# in order to pass any filters (e.g. authentication) defined in
|
|
42
|
+
# IssueCommentsController. Be sure to keep this updated too.
|
|
43
|
+
let(:valid_session) { {} }
|
|
44
|
+
|
|
45
|
+
describe 'GET #index' do
|
|
46
|
+
it 'assigns all issue_comments as @issue_comments' do
|
|
47
|
+
get :index, session: valid_session,
|
|
48
|
+
params: {}
|
|
49
|
+
expect(assigns(:issue_comments)).to eq([issue_comment])
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
describe 'GET #show' do
|
|
54
|
+
it 'assigns the requested issue_comment as @issue_comment' do
|
|
55
|
+
issue_comment # To create issue_comment
|
|
56
|
+
get :show, session: valid_session,
|
|
57
|
+
params: { id: issue_comment.to_param }
|
|
58
|
+
expect(assigns(:issue_comment)).to eq(issue_comment)
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
describe 'GET #new' do
|
|
63
|
+
it 'assigns a new issue_comment as @issue_comment' do
|
|
64
|
+
get :new, session: valid_session,
|
|
65
|
+
params: {}
|
|
66
|
+
expect(assigns(:issue_comment)).to be_a_new(IssueComment)
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
describe 'GET #edit' do
|
|
71
|
+
it 'assigns the requested issue_comment as @issue_comment' do
|
|
72
|
+
issue_comment # To create issue_comment
|
|
73
|
+
get :edit, session: valid_session,
|
|
74
|
+
params: { id: issue_comment.to_param }
|
|
75
|
+
expect(assigns(:issue_comment)).to eq(issue_comment)
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
describe 'POST #create' do
|
|
80
|
+
context 'with valid params' do
|
|
81
|
+
it 'creates a new IssueComment' do
|
|
82
|
+
expect {
|
|
83
|
+
post :create, session: valid_session,
|
|
84
|
+
params: { issue_comment: valid_parameters }
|
|
85
|
+
}.to change(IssueComment, :count).by(1)
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
it 'assigns a newly created issue_comment as @issue_comment' do
|
|
89
|
+
post :create, session: valid_session,
|
|
90
|
+
params: { issue_comment: valid_parameters }
|
|
91
|
+
expect(assigns(:issue_comment)).to be_a(IssueComment)
|
|
92
|
+
expect(assigns(:issue_comment)).to be_persisted
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
it 'redirects to the created issue_comment' do
|
|
96
|
+
post :create, session: valid_session,
|
|
97
|
+
params: { issue_comment: valid_parameters }
|
|
98
|
+
expect(response).to redirect_to(IssueComment.last)
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
context 'with invalid params' do
|
|
103
|
+
it 'assigns a newly created but unsaved issue_comment as @issue_comment' do
|
|
104
|
+
post :create, session: valid_session,
|
|
105
|
+
params: { issue_comment: invalid_parameters }
|
|
106
|
+
expect(assigns(:issue_comment)).to be_a_new(IssueComment)
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
it "re-renders the 'new' template" do
|
|
110
|
+
post :create, session: valid_session,
|
|
111
|
+
params: { issue_comment: invalid_parameters }
|
|
112
|
+
expect(response).to render_template('new')
|
|
113
|
+
end
|
|
114
|
+
end
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
describe 'PUT #update' do
|
|
118
|
+
context 'with valid params' do
|
|
119
|
+
let(:new_parameters) do
|
|
120
|
+
skip('Add a hash of attributes valid for your model')
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
it 'updates the requested issue_comment' do
|
|
124
|
+
issue_comment # To create issue_comment
|
|
125
|
+
put :update, session: valid_session,
|
|
126
|
+
params: { id: issue_comment.to_param, issue_comment: new_parameters }
|
|
127
|
+
issue_comment.reload
|
|
128
|
+
skip('Add assertions for updated state')
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
it 'assigns the requested issue_comment as @issue_comment' do
|
|
132
|
+
issue_comment # To create issue_comment
|
|
133
|
+
put :update, session: valid_session,
|
|
134
|
+
params: { id: issue_comment.to_param, issue_comment: new_parameters }
|
|
135
|
+
expect(assigns(:issue_comment)).to eq(issue_comment)
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
it 'redirects to the issue_comment' do
|
|
139
|
+
issue_comment # To create issue_comment
|
|
140
|
+
put :update, session: valid_session,
|
|
141
|
+
params: { id: issue_comment.to_param, issue_comment: new_parameters }
|
|
142
|
+
expect(response).to redirect_to(issue_comment)
|
|
143
|
+
end
|
|
144
|
+
end
|
|
145
|
+
|
|
146
|
+
context 'with invalid params' do
|
|
147
|
+
it 'assigns the issue_comment as @issue_comment' do
|
|
148
|
+
issue_comment # To create issue_comment
|
|
149
|
+
put :update, session: valid_session,
|
|
150
|
+
params: { id: issue_comment.to_param, issue_comment: invalid_parameters }
|
|
151
|
+
expect(assigns(:issue_comment)).to eq(issue_comment)
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
it "re-renders the 'edit' template" do
|
|
155
|
+
issue_comment # To create issue_comment
|
|
156
|
+
put :update, session: valid_session,
|
|
157
|
+
params: { id: issue_comment.to_param, issue_comment: invalid_parameters }
|
|
158
|
+
expect(response).to render_template('edit')
|
|
159
|
+
end
|
|
160
|
+
end
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
describe 'DELETE #destroy' do
|
|
164
|
+
it 'destroys the requested issue_comment' do
|
|
165
|
+
issue_comment # To create issue_comment
|
|
166
|
+
expect {
|
|
167
|
+
delete :destroy, session: valid_session,
|
|
168
|
+
params: { id: issue_comment.to_param }
|
|
169
|
+
}.to change(IssueComment, :count).by(-1)
|
|
170
|
+
end
|
|
171
|
+
|
|
172
|
+
it 'redirects to the issue_comments list' do
|
|
173
|
+
issue_comment # To create issue_comment
|
|
174
|
+
delete :destroy, session: valid_session,
|
|
175
|
+
params: { id: issue_comment.to_param }
|
|
176
|
+
expect(response).to redirect_to(issue_comments_url)
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
end
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
require 'rails_helper'
|
|
3
|
+
|
|
4
|
+
# This spec was generated by rspec-rails when you ran the scaffold generator.
|
|
5
|
+
# It demonstrates how one might use RSpec to specify the controller code that
|
|
6
|
+
# was generated by Rails when you ran the scaffold generator.
|
|
7
|
+
#
|
|
8
|
+
# It assumes that the implementation code is generated by the rails scaffold
|
|
9
|
+
# generator. If you are using any extension libraries to generate different
|
|
10
|
+
# controller code, this generated spec may or may not pass.
|
|
11
|
+
#
|
|
12
|
+
# It only uses APIs available in rails and/or rspec-rails. There are a number
|
|
13
|
+
# of tools you can use to make these specs even more expressive, but we're
|
|
14
|
+
# sticking to rails and rspec-rails APIs to keep things simple and stable.
|
|
15
|
+
#
|
|
16
|
+
# Compared to earlier versions of this generator, there is very limited use of
|
|
17
|
+
# stubs and message expectations in this spec. Stubs are only used when there
|
|
18
|
+
# is no simpler way to get a handle on the object needed for the example.
|
|
19
|
+
# Message expectations are only used when there is no simpler way to specify
|
|
20
|
+
# that an instance is receiving a specific message.
|
|
21
|
+
|
|
22
|
+
RSpec.describe IssuesController, type: :controller do
|
|
23
|
+
let(:user) { FactoryBot.create(:user) }
|
|
24
|
+
let(:project) { FactoryBot.create(:project, owner: user) }
|
|
25
|
+
let(:issue) { FactoryBot.create(:issue, project: project, creator: user) }
|
|
26
|
+
before { devise_user_login(user) }
|
|
27
|
+
|
|
28
|
+
# This should return the minimal set of attributes required to create a valid
|
|
29
|
+
# Issue. As you add validations to Issue, be sure to
|
|
30
|
+
# adjust the attributes here as well.
|
|
31
|
+
let(:valid_parameters) do
|
|
32
|
+
FactoryBot.attributes_for(:issue).merge(project_id: project.id, creator_id: user.id)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
let(:invalid_parameters) do
|
|
36
|
+
valid_parameters.symbolize_keys.merge(title: '')
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# This should return the minimal set of values that should be in the session
|
|
40
|
+
# in order to pass any filters (e.g. authentication) defined in
|
|
41
|
+
# IssuesController. Be sure to keep this updated too.
|
|
42
|
+
let(:valid_session) { {} }
|
|
43
|
+
|
|
44
|
+
describe 'GET #index' do
|
|
45
|
+
it 'assigns all issues as @issues' do
|
|
46
|
+
get :index, session: valid_session,
|
|
47
|
+
params: {}
|
|
48
|
+
expect(assigns(:issues)).to eq([issue])
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
describe 'GET #show' do
|
|
53
|
+
it 'assigns the requested issue as @issue' do
|
|
54
|
+
issue # To create issue
|
|
55
|
+
get :show, session: valid_session,
|
|
56
|
+
params: { id: issue.to_param }
|
|
57
|
+
expect(assigns(:issue)).to eq(issue)
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
describe 'GET #new' do
|
|
62
|
+
it 'assigns a new issue as @issue' do
|
|
63
|
+
get :new, session: valid_session,
|
|
64
|
+
params: {}
|
|
65
|
+
expect(assigns(:issue)).to be_a_new(Issue)
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
describe 'GET #edit' do
|
|
70
|
+
it 'assigns the requested issue as @issue' do
|
|
71
|
+
issue # To create issue
|
|
72
|
+
get :edit, session: valid_session,
|
|
73
|
+
params: { id: issue.to_param }
|
|
74
|
+
expect(assigns(:issue)).to eq(issue)
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
describe 'POST #create' do
|
|
79
|
+
context 'with valid params' do
|
|
80
|
+
it 'creates a new Issue' do
|
|
81
|
+
expect {
|
|
82
|
+
post :create, session: valid_session,
|
|
83
|
+
params: { issue: valid_parameters }
|
|
84
|
+
}.to change(Issue, :count).by(1)
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
it 'assigns a newly created issue as @issue' do
|
|
88
|
+
post :create, session: valid_session,
|
|
89
|
+
params: { issue: valid_parameters }
|
|
90
|
+
expect(assigns(:issue)).to be_a(Issue)
|
|
91
|
+
expect(assigns(:issue)).to be_persisted
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
it 'redirects to the created issue' do
|
|
95
|
+
post :create, session: valid_session,
|
|
96
|
+
params: { issue: valid_parameters }
|
|
97
|
+
expect(response).to redirect_to(Issue.last)
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
context 'with invalid params' do
|
|
102
|
+
it 'assigns a newly created but unsaved issue as @issue' do
|
|
103
|
+
post :create, session: valid_session,
|
|
104
|
+
params: { issue: invalid_parameters }
|
|
105
|
+
expect(assigns(:issue)).to be_a_new(Issue)
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
it "re-renders the 'new' template" do
|
|
109
|
+
post :create, session: valid_session,
|
|
110
|
+
params: { issue: invalid_parameters }
|
|
111
|
+
expect(response).to render_template('new')
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
describe 'PUT #update' do
|
|
117
|
+
context 'with valid params' do
|
|
118
|
+
let(:new_title) { valid_parameters[:title].succ }
|
|
119
|
+
let(:new_status) { Issue.status.values[1] }
|
|
120
|
+
let(:new_parameters) do
|
|
121
|
+
valid_parameters.merge(title: new_title, status: new_status)
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
it 'updates the requested issue' do
|
|
125
|
+
issue # To create issue
|
|
126
|
+
put :update, session: valid_session,
|
|
127
|
+
params: { id: issue.to_param, issue: new_parameters }
|
|
128
|
+
issue.reload
|
|
129
|
+
expect(issue.title).to eq new_title
|
|
130
|
+
expect(issue.status).to eq new_status
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
it 'assigns the requested issue as @issue' do
|
|
134
|
+
issue # To create issue
|
|
135
|
+
put :update, session: valid_session,
|
|
136
|
+
params: { id: issue.to_param, issue: new_parameters }
|
|
137
|
+
expect(assigns(:issue)).to eq(issue)
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
it 'redirects to the issue' do
|
|
141
|
+
issue # To create issue
|
|
142
|
+
put :update, session: valid_session,
|
|
143
|
+
params: { id: issue.to_param, issue: new_parameters }
|
|
144
|
+
expect(response).to redirect_to(issue)
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
context 'with invalid params' do
|
|
149
|
+
it 'assigns the issue as @issue' do
|
|
150
|
+
issue # To create issue
|
|
151
|
+
put :update, session: valid_session,
|
|
152
|
+
params: { id: issue.to_param, issue: invalid_parameters }
|
|
153
|
+
expect(assigns(:issue)).to eq(issue)
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
it "re-renders the 'edit' template" do
|
|
157
|
+
issue # To create issue
|
|
158
|
+
put :update, session: valid_session,
|
|
159
|
+
params: { id: issue.to_param, issue: invalid_parameters }
|
|
160
|
+
expect(response).to render_template('edit')
|
|
161
|
+
end
|
|
162
|
+
end
|
|
163
|
+
end
|
|
164
|
+
|
|
165
|
+
describe 'DELETE #destroy' do
|
|
166
|
+
it 'destroys the requested issue' do
|
|
167
|
+
issue # To create issue
|
|
168
|
+
expect {
|
|
169
|
+
delete :destroy, session: valid_session,
|
|
170
|
+
params: { id: issue.to_param }
|
|
171
|
+
}.to change(Issue, :count).by(-1)
|
|
172
|
+
end
|
|
173
|
+
|
|
174
|
+
it 'redirects to the issues list' do
|
|
175
|
+
issue # To create issue
|
|
176
|
+
delete :destroy, session: valid_session,
|
|
177
|
+
params: { id: issue.to_param }
|
|
178
|
+
expect(response).to redirect_to(issues_url)
|
|
179
|
+
end
|
|
180
|
+
end
|
|
181
|
+
end
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
require 'rails_helper'
|
|
3
|
+
|
|
4
|
+
# This spec was generated by rspec-rails when you ran the scaffold generator.
|
|
5
|
+
# It demonstrates how one might use RSpec to specify the controller code that
|
|
6
|
+
# was generated by Rails when you ran the scaffold generator.
|
|
7
|
+
#
|
|
8
|
+
# It assumes that the implementation code is generated by the rails scaffold
|
|
9
|
+
# generator. If you are using any extension libraries to generate different
|
|
10
|
+
# controller code, this generated spec may or may not pass.
|
|
11
|
+
#
|
|
12
|
+
# It only uses APIs available in rails and/or rspec-rails. There are a number
|
|
13
|
+
# of tools you can use to make these specs even more expressive, but we're
|
|
14
|
+
# sticking to rails and rspec-rails APIs to keep things simple and stable.
|
|
15
|
+
#
|
|
16
|
+
# Compared to earlier versions of this generator, there is very limited use of
|
|
17
|
+
# stubs and message expectations in this spec. Stubs are only used when there
|
|
18
|
+
# is no simpler way to get a handle on the object needed for the example.
|
|
19
|
+
# Message expectations are only used when there is no simpler way to specify
|
|
20
|
+
# that an instance is receiving a specific message.
|
|
21
|
+
|
|
22
|
+
RSpec.describe PhasesController, type: :controller do
|
|
23
|
+
let(:user) { FactoryBot.create(:user) }
|
|
24
|
+
let(:project) { FactoryBot.create(:project, owner: user) }
|
|
25
|
+
let(:phase) { FactoryBot.create(:phase, project: project) }
|
|
26
|
+
before { devise_user_login(user) }
|
|
27
|
+
|
|
28
|
+
# This should return the minimal set of attributes required to create a valid
|
|
29
|
+
# Phase. As you add validations to Phase, be sure to
|
|
30
|
+
# adjust the attributes here as well.
|
|
31
|
+
let(:valid_parameters) do
|
|
32
|
+
FactoryBot.attributes_for(:phase).merge(project_id: project.id)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
let(:invalid_parameters) do
|
|
36
|
+
valid_parameters.symbolize_keys.merge(name: '')
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# This should return the minimal set of values that should be in the session
|
|
40
|
+
# in order to pass any filters (e.g. authentication) defined in
|
|
41
|
+
# PhasesController. Be sure to keep this updated too.
|
|
42
|
+
let(:valid_session) { {} }
|
|
43
|
+
|
|
44
|
+
describe 'GET #index' do
|
|
45
|
+
it 'assigns all phases as @phases' do
|
|
46
|
+
get :index, session: valid_session,
|
|
47
|
+
params: {}
|
|
48
|
+
expect(assigns(:phases)).to eq([phase])
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
describe 'GET #show' do
|
|
53
|
+
it 'assigns the requested phase as @phase' do
|
|
54
|
+
phase # To create phase
|
|
55
|
+
get :show, session: valid_session,
|
|
56
|
+
params: { id: phase.to_param }
|
|
57
|
+
expect(assigns(:phase)).to eq(phase)
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
describe 'GET #new' do
|
|
62
|
+
it 'assigns a new phase as @phase' do
|
|
63
|
+
get :new, session: valid_session,
|
|
64
|
+
params: {}
|
|
65
|
+
expect(assigns(:phase)).to be_a_new(Phase)
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
describe 'GET #edit' do
|
|
70
|
+
it 'assigns the requested phase as @phase' do
|
|
71
|
+
phase # To create phase
|
|
72
|
+
get :edit, session: valid_session,
|
|
73
|
+
params: { id: phase.to_param }
|
|
74
|
+
expect(assigns(:phase)).to eq(phase)
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
describe 'POST #create' do
|
|
79
|
+
context 'with valid params' do
|
|
80
|
+
it 'creates a new Phase' do
|
|
81
|
+
expect {
|
|
82
|
+
post :create, session: valid_session,
|
|
83
|
+
params: { phase: valid_parameters }
|
|
84
|
+
}.to change(Phase, :count).by(1)
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
it 'assigns a newly created phase as @phase' do
|
|
88
|
+
post :create, session: valid_session,
|
|
89
|
+
params: { phase: valid_parameters }
|
|
90
|
+
expect(assigns(:phase)).to be_a(Phase)
|
|
91
|
+
expect(assigns(:phase)).to be_persisted
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
it 'redirects to the created phase' do
|
|
95
|
+
post :create, session: valid_session,
|
|
96
|
+
params: { phase: valid_parameters }
|
|
97
|
+
expect(response).to redirect_to(Phase.last)
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
context 'with invalid params' do
|
|
102
|
+
it 'assigns a newly created but unsaved phase as @phase' do
|
|
103
|
+
post :create, session: valid_session,
|
|
104
|
+
params: { phase: invalid_parameters }
|
|
105
|
+
expect(assigns(:phase)).to be_a_new(Phase)
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
it "re-renders the 'new' template" do
|
|
109
|
+
post :create, session: valid_session,
|
|
110
|
+
params: { phase: invalid_parameters }
|
|
111
|
+
expect(response).to render_template('new')
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
describe 'PUT #update' do
|
|
117
|
+
context 'with valid params' do
|
|
118
|
+
let(:new_name) { valid_parameters[:name].succ }
|
|
119
|
+
let(:new_started_at) { valid_parameters[:started_at].succ }
|
|
120
|
+
let(:new_finished_at) { valid_parameters[:finished_at].succ }
|
|
121
|
+
let(:new_parameters) do
|
|
122
|
+
valid_parameters.merge(name: new_name, started_at: new_started_at, finished_at: new_finished_at)
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
it 'updates the requested phase' do
|
|
126
|
+
phase # To create phase
|
|
127
|
+
put :update, session: valid_session,
|
|
128
|
+
params: { id: phase.to_param, phase: new_parameters }
|
|
129
|
+
phase.reload
|
|
130
|
+
expect(phase.name).to eq new_name
|
|
131
|
+
expect(phase.started_at).to eq new_started_at
|
|
132
|
+
expect(phase.finished_at).to eq new_finished_at
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
it 'assigns the requested phase as @phase' do
|
|
136
|
+
phase # To create phase
|
|
137
|
+
put :update, session: valid_session,
|
|
138
|
+
params: { id: phase.to_param, phase: new_parameters }
|
|
139
|
+
expect(assigns(:phase)).to eq(phase)
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
it 'redirects to the phase' do
|
|
143
|
+
phase # To create phase
|
|
144
|
+
put :update, session: valid_session,
|
|
145
|
+
params: { id: phase.to_param, phase: new_parameters }
|
|
146
|
+
expect(response).to redirect_to(phase)
|
|
147
|
+
end
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
context 'with invalid params' do
|
|
151
|
+
it 'assigns the phase as @phase' do
|
|
152
|
+
phase # To create phase
|
|
153
|
+
put :update, session: valid_session,
|
|
154
|
+
params: { id: phase.to_param, phase: invalid_parameters }
|
|
155
|
+
expect(assigns(:phase)).to eq(phase)
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
it "re-renders the 'edit' template" do
|
|
159
|
+
phase # To create phase
|
|
160
|
+
put :update, session: valid_session,
|
|
161
|
+
params: { id: phase.to_param, phase: invalid_parameters }
|
|
162
|
+
expect(response).to render_template('edit')
|
|
163
|
+
end
|
|
164
|
+
end
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
describe 'DELETE #destroy' do
|
|
168
|
+
it 'destroys the requested phase' do
|
|
169
|
+
phase # To create phase
|
|
170
|
+
expect {
|
|
171
|
+
delete :destroy, session: valid_session,
|
|
172
|
+
params: { id: phase.to_param }
|
|
173
|
+
}.to change(Phase, :count).by(-1)
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
it 'redirects to the phases list' do
|
|
177
|
+
phase # To create phase
|
|
178
|
+
delete :destroy, session: valid_session,
|
|
179
|
+
params: { id: phase.to_param }
|
|
180
|
+
expect(response).to redirect_to(phases_url)
|
|
181
|
+
end
|
|
182
|
+
end
|
|
183
|
+
end
|