enju_seed 0.3.6 → 0.4.0.beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +9 -7
  3. data/Rakefile +16 -7
  4. data/app/controllers/profiles_controller.rb +33 -33
  5. data/app/controllers/roles_controller.rb +3 -2
  6. data/app/models/concerns/enju_seed/enju_user.rb +27 -31
  7. data/app/models/concerns/master_model.rb +2 -13
  8. data/app/models/identity.rb +3 -3
  9. data/app/models/profile.rb +14 -14
  10. data/app/models/role.rb +11 -27
  11. data/app/models/user_has_role.rb +6 -3
  12. data/app/policies/user_export_file_policy.rb +21 -0
  13. data/app/policies/user_import_file_policy.rb +21 -0
  14. data/app/policies/user_import_result_policy.rb +21 -0
  15. data/app/views/profiles/show.html.erb +1 -1
  16. data/app/views/roles/_form.html.erb +1 -1
  17. data/app/views/roles/show.html.erb +6 -1
  18. data/db/migrate/041_create_roles.rb +6 -7
  19. data/db/migrate/20100606065209_create_user_has_roles.rb +3 -3
  20. data/db/migrate/20130221154434_add_additional_attributes_to_user.rb +2 -2
  21. data/db/migrate/20140122054321_create_profiles.rb +5 -8
  22. data/db/migrate/20140811031145_add_expired_at_to_profile.rb +1 -1
  23. data/db/migrate/20141003181336_add_full_name_transcription_to_profile.rb +1 -1
  24. data/db/migrate/20141003182825_add_date_of_birth_to_profile.rb +1 -1
  25. data/db/migrate/20150421023923_create_identities.rb +4 -6
  26. data/db/migrate/20151126005552_add_provider_to_identity.rb +2 -2
  27. data/db/migrate/20170114174536_add_profile_id_to_user.rb +5 -0
  28. data/lib/enju_seed/engine.rb +2 -3
  29. data/lib/enju_seed/localized_name.rb +1 -3
  30. data/lib/enju_seed/version.rb +1 -1
  31. data/lib/enju_seed.rb +2 -3
  32. data/lib/tasks/enju_seed_tasks.rake +4 -8
  33. data/spec/controllers/my_accounts_controller_spec.rb +45 -56
  34. data/spec/controllers/profiles_controller_spec.rb +147 -152
  35. data/spec/controllers/roles_controller_spec.rb +35 -35
  36. data/spec/dummy/Rakefile +1 -1
  37. data/spec/dummy/app/models/user.rb +3 -3
  38. data/spec/dummy/bin/rails +1 -1
  39. data/spec/dummy/bin/setup +10 -19
  40. data/spec/dummy/config/application.rb +1 -6
  41. data/spec/dummy/config/database.yml +70 -10
  42. data/spec/dummy/config/environments/development.rb +1 -1
  43. data/spec/dummy/config/environments/production.rb +3 -8
  44. data/spec/dummy/config/environments/test.rb +1 -1
  45. data/spec/dummy/config/initializers/assets.rb +4 -7
  46. data/spec/dummy/config/initializers/cookies_serializer.rb +0 -2
  47. data/spec/dummy/config/initializers/friendly_id.rb +75 -75
  48. data/spec/dummy/config/initializers/wrap_parameters.rb +2 -2
  49. data/spec/dummy/config/routes.rb +0 -4
  50. data/spec/dummy/config/secrets.yml +5 -15
  51. data/spec/dummy/config.ru +1 -2
  52. data/spec/dummy/db/migrate/001_create_agents.rb +7 -7
  53. data/spec/dummy/db/migrate/002_devise_create_users.rb +3 -4
  54. data/spec/dummy/db/migrate/005_create_manifestations.rb +4 -5
  55. data/spec/dummy/db/migrate/006_create_items.rb +3 -4
  56. data/spec/dummy/db/migrate/012_create_owns.rb +3 -5
  57. data/spec/dummy/db/migrate/015_create_creates.rb +3 -5
  58. data/spec/dummy/db/migrate/032_create_checkins.rb +1 -1
  59. data/spec/dummy/db/migrate/033_create_checkouts.rb +1 -1
  60. data/spec/dummy/db/migrate/035_create_reserves.rb +1 -1
  61. data/spec/dummy/db/migrate/047_create_produces.rb +3 -5
  62. data/spec/dummy/db/migrate/059_create_libraries.rb +8 -7
  63. data/spec/dummy/db/migrate/069_create_shelves.rb +3 -3
  64. data/spec/dummy/db/migrate/073_create_carrier_types.rb +2 -2
  65. data/spec/dummy/db/migrate/077_create_user_groups.rb +4 -4
  66. data/spec/dummy/db/migrate/080_create_library_groups.rb +6 -6
  67. data/spec/dummy/db/migrate/112_create_frequencies.rb +2 -2
  68. data/spec/dummy/db/migrate/117_create_form_of_works.rb +2 -2
  69. data/spec/dummy/db/migrate/120_create_baskets.rb +2 -2
  70. data/spec/dummy/db/migrate/121_create_checked_items.rb +1 -1
  71. data/spec/dummy/db/migrate/124_create_bookstores.rb +3 -3
  72. data/spec/dummy/db/migrate/125_create_donates.rb +3 -3
  73. data/spec/dummy/db/migrate/127_create_use_restrictions.rb +1 -1
  74. data/spec/dummy/db/migrate/129_create_item_has_use_restrictions.rb +1 -1
  75. data/spec/dummy/db/migrate/130_create_request_status_types.rb +3 -3
  76. data/spec/dummy/db/migrate/131_create_request_types.rb +3 -3
  77. data/spec/dummy/db/migrate/132_create_circulation_statuses.rb +1 -1
  78. data/spec/dummy/db/migrate/133_create_agent_merges.rb +2 -2
  79. data/spec/dummy/db/migrate/134_create_agent_merge_lists.rb +1 -1
  80. data/spec/dummy/db/migrate/20080830154109_create_realizes.rb +3 -5
  81. data/spec/dummy/db/migrate/20080830172106_create_exemplifies.rb +11 -0
  82. data/spec/dummy/db/migrate/20080905191442_create_agent_types.rb +2 -2
  83. data/spec/dummy/db/migrate/20081006090811_create_subscriptions.rb +5 -3
  84. data/spec/dummy/db/migrate/20081006093246_create_subscribes.rb +3 -4
  85. data/spec/dummy/db/migrate/20081023092436_create_search_engines.rb +6 -6
  86. data/spec/dummy/db/migrate/20081025083323_create_countries.rb +5 -5
  87. data/spec/dummy/db/migrate/20081025083905_create_languages.rb +6 -6
  88. data/spec/dummy/db/migrate/20081027150907_create_picture_files.rb +2 -2
  89. data/spec/dummy/db/migrate/20081028083142_create_agent_import_files.rb +1 -1
  90. data/spec/dummy/db/migrate/20081028083208_create_resource_import_files.rb +1 -1
  91. data/spec/dummy/db/migrate/20081030023412_create_checkout_types.rb +1 -1
  92. data/spec/dummy/db/migrate/20081030023518_create_user_group_has_checkout_types.rb +1 -1
  93. data/spec/dummy/db/migrate/20081030023615_create_carrier_type_has_checkout_types.rb +1 -1
  94. data/spec/dummy/db/migrate/20081212075554_create_checkout_stat_has_manifestations.rb +1 -1
  95. data/spec/dummy/db/migrate/20081212080038_create_manifestation_checkout_stats.rb +1 -1
  96. data/spec/dummy/db/migrate/20081215094302_create_user_checkout_stats.rb +1 -1
  97. data/spec/dummy/db/migrate/20081215094955_create_checkout_stat_has_users.rb +1 -1
  98. data/spec/dummy/db/migrate/20081216190517_create_reserve_stat_has_manifestations.rb +1 -1
  99. data/spec/dummy/db/migrate/20081216190724_create_manifestation_reserve_stats.rb +1 -1
  100. data/spec/dummy/db/migrate/20081220023628_create_user_reserve_stats.rb +1 -1
  101. data/spec/dummy/db/migrate/20081220034117_create_reserve_stat_has_users.rb +1 -1
  102. data/spec/dummy/db/migrate/20090321130448_add_completed_at_to_user_checkout_stat.rb +1 -1
  103. data/spec/dummy/db/migrate/20090705133942_add_attachments_picture_to_picture_file.rb +1 -1
  104. data/spec/dummy/db/migrate/20090705212043_add_attachments_attachment_to_manifestation.rb +1 -1
  105. data/spec/dummy/db/migrate/20090720091106_create_medium_of_performances.rb +2 -2
  106. data/spec/dummy/db/migrate/20090720091429_create_content_types.rb +2 -2
  107. data/spec/dummy/db/migrate/20090812151902_create_agent_relationship_types.rb +2 -2
  108. data/spec/dummy/db/migrate/20091012101112_add_dcndl_schema.rb +1 -1
  109. data/spec/dummy/db/migrate/20091025080447_create_licenses.rb +2 -2
  110. data/spec/dummy/db/migrate/20091214131723_create_series_statements.rb +1 -1
  111. data/spec/dummy/db/migrate/20100129142347_create_import_requests.rb +4 -7
  112. data/spec/dummy/db/migrate/20100211105551_add_admin_networks_to_library_group.rb +2 -2
  113. data/spec/dummy/db/migrate/20100223121519_rename_series_statement_title_to_original_title.rb +1 -1
  114. data/spec/dummy/db/migrate/20100314190054_add_opening_hour_to_library.rb +1 -1
  115. data/spec/dummy/db/migrate/20100321235924_add_series_statement_identifier_to_series_statement.rb +1 -1
  116. data/spec/dummy/db/migrate/20100525124311_create_manifestation_relationships.rb +4 -6
  117. data/spec/dummy/db/migrate/20100606073747_create_agent_relationships.rb +1 -1
  118. data/spec/dummy/db/migrate/20100607044753_create_manifestation_relationship_types.rb +2 -2
  119. data/spec/dummy/db/migrate/20100814091104_add_position_to_agent_relationship.rb +1 -1
  120. data/spec/dummy/db/migrate/20100925043847_create_resource_import_results.rb +1 -1
  121. data/spec/dummy/db/migrate/20100925074559_create_agent_import_results.rb +1 -1
  122. data/spec/dummy/db/migrate/20101212070145_add_acquired_at_to_item.rb +1 -1
  123. data/spec/dummy/db/migrate/20110222073537_add_url_to_library_group.rb +2 -2
  124. data/spec/dummy/db/migrate/20110301035123_add_pub_date_to_manifestation.rb +1 -1
  125. data/spec/dummy/db/migrate/20110301121550_add_birth_date_and_death_date_to_agent.rb +1 -1
  126. data/spec/dummy/db/migrate/20110301134521_add_expire_date_to_reserve.rb +1 -1
  127. data/spec/dummy/db/migrate/20110318183304_add_valid_period_for_new_user_to_user_group.rb +2 -2
  128. data/spec/dummy/db/migrate/20110328130826_add_current_checkout_count_to_user_group_has_checkout_type.rb +1 -1
  129. data/spec/dummy/db/migrate/20110603184217_add_edit_mode_to_resource_import_file.rb +1 -1
  130. data/spec/dummy/db/migrate/20110619064807_add_edition_string_to_manifestation.rb +1 -1
  131. data/spec/dummy/db/migrate/20110620173525_add_bookstore_id_to_item.rb +1 -1
  132. data/spec/dummy/db/migrate/20110621093332_remove_expire_date_from_reserve.rb +1 -1
  133. data/spec/dummy/db/migrate/20110627034940_create_series_statement_merge_lists.rb +1 -1
  134. data/spec/dummy/db/migrate/20110627035057_create_series_statement_merges.rb +3 -3
  135. data/spec/dummy/db/migrate/20110627122938_add_number_of_day_to_notify_overdue_to_user_group.rb +1 -1
  136. data/spec/dummy/db/migrate/20110916091020_add_volume_number_to_manifestation.rb +1 -1
  137. data/spec/dummy/db/migrate/20110916103953_add_manifestaiton_id_to_series_statement.rb +1 -1
  138. data/spec/dummy/db/migrate/20110918162329_add_note_to_series_statement.rb +1 -1
  139. data/spec/dummy/db/migrate/20111124110059_create_create_types.rb +1 -1
  140. data/spec/dummy/db/migrate/20111124110319_create_realize_types.rb +1 -1
  141. data/spec/dummy/db/migrate/20111124110355_create_produce_types.rb +1 -1
  142. data/spec/dummy/db/migrate/20111124112131_add_create_type_to_create.rb +1 -1
  143. data/spec/dummy/db/migrate/20111129044509_add_pickup_location_to_reserve.rb +1 -1
  144. data/spec/dummy/db/migrate/20120105074911_add_isil_to_library.rb +1 -1
  145. data/spec/dummy/db/migrate/20120125152919_add_title_subseries_transcription_to_series_statement.rb +1 -1
  146. data/spec/dummy/db/migrate/20120129014038_create_budget_types.rb +1 -1
  147. data/spec/dummy/db/migrate/20120129020544_add_budget_type_id_to_item.rb +1 -1
  148. data/spec/dummy/db/migrate/20120319120638_add_content_type_id_to_manifestation.rb +2 -2
  149. data/spec/dummy/db/migrate/20120319173203_create_accepts.rb +4 -4
  150. data/spec/dummy/db/migrate/20120410104851_add_year_of_publication_to_manifestation.rb +1 -1
  151. data/spec/dummy/db/migrate/20120413072700_add_picture_meta_to_picture_file.rb +1 -1
  152. data/spec/dummy/db/migrate/20120413100352_add_fingerprint_to_picture_file.rb +1 -1
  153. data/spec/dummy/db/migrate/20120413161340_add_fingerprint_to_resource_import_file.rb +1 -1
  154. data/spec/dummy/db/migrate/20120413161403_add_fingerprint_to_agent_import_file.rb +1 -1
  155. data/spec/dummy/db/migrate/20120415164821_add_attachment_meta_to_manifestation.rb +1 -1
  156. data/spec/dummy/db/migrate/20120418081407_add_month_of_publication_to_manifestation.rb +1 -1
  157. data/spec/dummy/db/migrate/20120424103932_add_librarian_id_to_checked_item.rb +1 -1
  158. data/spec/dummy/db/migrate/20120510140958_add_closed_to_shelf.rb +2 -2
  159. data/spec/dummy/db/migrate/20120511072422_add_agent_identifier_to_agent.rb +1 -1
  160. data/spec/dummy/db/migrate/20120602141129_add_edit_mode_to_agent_import_file.rb +1 -1
  161. data/spec/dummy/db/migrate/20121116031206_add_fulltext_content_to_manifestation.rb +1 -1
  162. data/spec/dummy/db/migrate/20130303124821_add_retained_at_to_reserve.rb +1 -1
  163. data/spec/dummy/db/migrate/20130304015019_add_postponed_at_to_reserve.rb +1 -1
  164. data/spec/dummy/db/migrate/20130412083556_add_latitude_and_longitude_to_library.rb +1 -1
  165. data/spec/dummy/db/migrate/20130416054135_add_circulation_status_id_to_item.rb +1 -1
  166. data/spec/dummy/db/migrate/20130421093852_add_periodical_to_manifestation.rb +1 -1
  167. data/spec/dummy/db/migrate/20130421155019_add_creator_string_to_series_statement.rb +1 -1
  168. data/spec/dummy/db/migrate/20130421164124_add_series_master_to_series_statement.rb +1 -1
  169. data/spec/dummy/db/migrate/20130429020822_add_root_manifestation_id_to_series_statement.rb +1 -1
  170. data/spec/dummy/db/migrate/20130506175303_create_identifier_types.rb +1 -1
  171. data/spec/dummy/db/migrate/20130506175834_create_identifiers.rb +2 -3
  172. data/spec/dummy/db/migrate/20130509185724_add_statement_of_responsibility_to_manifestation.rb +1 -1
  173. data/spec/dummy/db/migrate/20130519065638_add_lock_version_to_reserve.rb +1 -1
  174. data/spec/dummy/db/migrate/20130519065837_add_lock_version_to_checkin.rb +1 -1
  175. data/spec/dummy/db/migrate/20140110122216_create_user_import_files.rb +3 -3
  176. data/spec/dummy/db/migrate/20140110131010_create_user_import_results.rb +3 -3
  177. data/spec/dummy/db/migrate/20140518050147_create_reserve_transitions.rb +3 -3
  178. data/spec/dummy/db/migrate/20140519170214_create_resource_import_file_transitions.rb +3 -3
  179. data/spec/dummy/db/migrate/20140519171220_create_import_request_transitions.rb +3 -3
  180. data/spec/dummy/db/migrate/20140524020735_create_agent_import_file_transitions.rb +3 -3
  181. data/spec/dummy/db/migrate/20140524074813_create_user_import_file_transitions.rb +3 -2
  182. data/spec/dummy/db/migrate/20140528045518_create_user_checkout_stat_transitions.rb +4 -4
  183. data/spec/dummy/db/migrate/20140528045539_create_user_reserve_stat_transitions.rb +4 -4
  184. data/spec/dummy/db/migrate/20140528045600_create_manifestation_checkout_stat_transitions.rb +5 -5
  185. data/spec/dummy/db/migrate/20140528045617_create_manifestation_reserve_stat_transitions.rb +5 -5
  186. data/spec/dummy/db/migrate/20140529014410_create_item_transitions.rb +15 -0
  187. data/spec/dummy/db/migrate/20140614065404_create_resource_export_files.rb +1 -2
  188. data/spec/dummy/db/migrate/20140614141500_create_resource_export_file_transitions.rb +3 -3
  189. data/spec/dummy/db/migrate/20140628072217_add_user_encoding_to_user_import_file.rb +1 -1
  190. data/spec/dummy/db/migrate/20140628073524_add_user_encoding_to_agent_import_file.rb +1 -1
  191. data/spec/dummy/db/migrate/20140628073535_add_user_encoding_to_resource_import_file.rb +1 -1
  192. data/spec/dummy/db/migrate/20140709113413_create_user_export_files.rb +2 -3
  193. data/spec/dummy/db/migrate/20140709113905_create_user_export_file_transitions.rb +2 -2
  194. data/spec/dummy/db/migrate/20140720140916_add_binding_item_identifier_to_item.rb +1 -1
  195. data/spec/dummy/db/migrate/20140720170714_add_default_library_id_to_user_import_file.rb +2 -2
  196. data/spec/dummy/db/migrate/20140720170735_add_default_user_group_id_to_user_import_file.rb +2 -2
  197. data/spec/dummy/db/migrate/20140721151416_add_default_shelf_id_to_resource_import_file.rb +1 -1
  198. data/spec/dummy/db/migrate/20140802082007_add_manifestation_id_to_item.rb +2 -3
  199. data/spec/dummy/db/migrate/20140810061942_add_user_id_to_user_checkout_stat.rb +1 -1
  200. data/spec/dummy/db/migrate/20140810091231_add_checkout_icalendar_token_to_profile.rb +1 -1
  201. data/spec/dummy/db/migrate/20140810091417_add_save_checkout_history_to_profile.rb +1 -1
  202. data/spec/dummy/db/migrate/20140813182425_add_publication_place_to_manifestation.rb +1 -1
  203. data/spec/dummy/db/migrate/20140821151023_create_colors.rb +4 -2
  204. data/spec/dummy/db/migrate/20140823083524_add_extent_to_manifestation.rb +1 -1
  205. data/spec/dummy/db/migrate/20140823094847_add_dimensions_to_manifestation.rb +1 -1
  206. data/spec/dummy/db/migrate/20140823095740_rename_manifestation_periodical_to_serial.rb +1 -1
  207. data/spec/dummy/db/migrate/20141014065831_add_shelf_id_to_checkout.rb +1 -1
  208. data/spec/dummy/db/migrate/20141020120523_add_library_id_to_checkout.rb +1 -1
  209. data/spec/dummy/db/migrate/20141029131633_create_periodicals.rb +11 -0
  210. data/spec/dummy/db/migrate/20150106001709_create_demands.rb +1 -1
  211. data/spec/dummy/db/migrate/20150221063719_add_settings_to_library_group.rb +2 -2
  212. data/spec/dummy/db/migrate/20150302110310_add_attachment_id_to_manifestation.rb +7 -0
  213. data/spec/dummy/db/migrate/20150304183215_add_picture_id_to_picture_file.rb +7 -0
  214. data/spec/dummy/db/migrate/20150305025906_add_resource_import_id_to_resource_import_file.rb +7 -0
  215. data/spec/dummy/db/migrate/20150305030046_add_resource_export_id_to_resource_export_file.rb +8 -0
  216. data/spec/dummy/db/migrate/20150305031709_add_agent_import_id_to_agent_import_file.rb +7 -0
  217. data/spec/dummy/db/migrate/20150305105231_add_attachment_fingerprint_to_manifestation.rb +5 -0
  218. data/spec/dummy/db/migrate/20150420145354_add_attachment_to_carrier_type.rb +8 -0
  219. data/spec/dummy/db/migrate/20150420145420_add_attachment_to_content_type.rb +8 -0
  220. data/spec/dummy/db/migrate/20150924115059_create_withdraws.rb +4 -4
  221. data/spec/dummy/db/migrate/20151125004028_add_profile_id_to_agent.rb +1 -1
  222. data/spec/dummy/db/migrate/20151213070943_add_translation_table_to_library_group.rb +11 -5
  223. data/spec/dummy/db/migrate/20151213072705_add_footer_banner_to_library_group.rb +3 -20
  224. data/spec/dummy/db/migrate/20151216123621_create_doi_records.rb +12 -0
  225. data/spec/dummy/db/migrate/20160319144230_create_issn_records.rb +2 -1
  226. data/spec/dummy/db/migrate/20160506144040_create_isbn_records.rb +2 -1
  227. data/spec/dummy/db/migrate/20160513000929_create_agent_names.rb +18 -0
  228. data/spec/dummy/db/migrate/20160610093229_add_html_snippet_to_library_group.rb +1 -1
  229. data/spec/dummy/db/migrate/20160627232219_add_most_recent_to_user_import_file_transitions.rb +1 -1
  230. data/spec/dummy/db/migrate/20160627232316_add_most_recent_to_user_export_file_transitions.rb +1 -1
  231. data/spec/dummy/db/migrate/20160703184619_add_most_recent_to_reserve_transitions.rb +1 -1
  232. data/spec/dummy/db/migrate/20160703184650_add_most_recent_to_manifestation_checkout_stat_transitions.rb +1 -1
  233. data/spec/dummy/db/migrate/20160703184723_add_most_recent_to_manifestation_reserve_stat_transitions.rb +1 -1
  234. data/spec/dummy/db/migrate/20160703184747_add_most_recent_to_user_checkout_stat_transitions.rb +1 -1
  235. data/spec/dummy/db/migrate/20160703184805_add_most_recent_to_user_reserve_stat_transitions.rb +1 -1
  236. data/spec/dummy/db/migrate/20160801080612_add_most_recent_to_import_request_transitions.rb +1 -1
  237. data/spec/dummy/db/migrate/20160801080619_add_most_recent_to_resource_import_file_transitions.rb +1 -1
  238. data/spec/dummy/db/migrate/20160801080637_add_most_recent_to_resource_export_file_transitions.rb +1 -1
  239. data/spec/dummy/db/migrate/20160801080643_add_most_recent_to_agent_import_file_transitions.rb +1 -1
  240. data/spec/dummy/db/migrate/20160813191533_add_book_jacket_source_to_library_group.rb +5 -0
  241. data/spec/dummy/db/migrate/20160813191647_add_max_number_of_results_to_library_group.rb +1 -1
  242. data/spec/dummy/db/migrate/20160813191733_add_family_name_first_to_library_group.rb +1 -1
  243. data/spec/dummy/db/migrate/20160813191820_add_screenshot_generator_to_library_group.rb +5 -0
  244. data/spec/dummy/db/migrate/20160813192542_add_pub_year_facet_range_interval_to_library_group.rb +1 -1
  245. data/spec/dummy/db/migrate/20160813203039_add_user_id_to_library_group.rb +1 -1
  246. data/spec/dummy/db/migrate/20161111175127_add_attachment_data_to_manifestation.rb +5 -0
  247. data/spec/dummy/db/migrate/20161111193255_add_attachment_data_to_carrier_type.rb +5 -0
  248. data/spec/dummy/db/migrate/20161111193346_add_attachment_data_to_content_type.rb +5 -0
  249. data/spec/dummy/db/migrate/20161112122706_add_attachment_data_to_resource_import_file.rb +5 -0
  250. data/spec/dummy/db/migrate/20161112122750_add_attachment_data_to_resource_export_file.rb +5 -0
  251. data/spec/dummy/db/migrate/20161112122814_add_attachment_data_to_agent_import_file.rb +5 -0
  252. data/spec/dummy/db/migrate/20161114083857_add_image_data_to_picture_file.rb +5 -0
  253. data/spec/dummy/db/migrate/20161115184747_add_attachment_data_to_user_import_file.rb +5 -0
  254. data/spec/dummy/db/migrate/20161115184756_add_attachment_data_to_user_export_file.rb +5 -0
  255. data/spec/dummy/db/schema.rb +401 -450
  256. data/spec/factories/profile.rb +8 -8
  257. data/spec/factories/user.rb +25 -22
  258. data/spec/factories/user_group.rb +1 -1
  259. data/spec/fixtures/libraries.yml +37 -37
  260. data/spec/fixtures/library_groups.yml +27 -19
  261. data/spec/fixtures/profiles.yml +27 -35
  262. data/spec/fixtures/roles.yml +12 -12
  263. data/spec/fixtures/user_groups.yml +20 -10
  264. data/spec/fixtures/user_has_roles.yml +2 -2
  265. data/spec/fixtures/users.yml +7 -0
  266. data/spec/models/profile_spec.rb +17 -18
  267. data/spec/models/role_spec.rb +17 -18
  268. data/spec/models/user_has_role_spec.rb +4 -5
  269. data/spec/models/user_spec.rb +14 -16
  270. data/spec/rails_helper.rb +4 -9
  271. data/spec/requests/profiles_spec.rb +3 -3
  272. data/spec/routing/profiles_routing_spec.rb +16 -18
  273. data/spec/routing/roles_routing_spec.rb +16 -18
  274. data/spec/routing/users_spec.rb +6 -7
  275. data/spec/spec_helper.rb +47 -49
  276. data/spec/support/controller_macros.rb +6 -6
  277. data/spec/views/my_accounts/show.html.erb_spec.rb +6 -6
  278. data/spec/views/profiles/edit.html.erb_spec.rb +7 -7
  279. data/spec/views/profiles/index.html.erb_spec.rb +3 -3
  280. data/spec/views/profiles/new.html.erb_spec.rb +5 -6
  281. data/spec/views/profiles/show.html.erb_spec.rb +4 -4
  282. metadata +297 -454
  283. data/db/migrate/20140610123439_drop_email_unique_constraint_enju_leaf_rc10.rb +0 -11
  284. data/lib/generators/enju_seed/setup/setup_generator.rb +0 -9
  285. data/lib/generators/enju_seed/setup/templates/db/fixtures/roles.yml +0 -38
  286. data/lib/generators/enju_seed/update/update_generator.rb +0 -9
  287. data/spec/dummy/app/models/application_record.rb +0 -3
  288. data/spec/dummy/bin/update +0 -29
  289. data/spec/dummy/bin/yarn +0 -11
  290. data/spec/dummy/config/cable.yml +0 -10
  291. data/spec/dummy/config/initializers/application_controller_renderer.rb +0 -8
  292. data/spec/dummy/config/puma.rb +0 -56
  293. data/spec/dummy/config/spring.rb +0 -6
  294. data/spec/dummy/config/webpack/development.js +0 -5
  295. data/spec/dummy/config/webpack/environment.js +0 -11
  296. data/spec/dummy/config/webpack/production.js +0 -5
  297. data/spec/dummy/config/webpack/test.js +0 -5
  298. data/spec/dummy/config/webpacker.yml +0 -95
  299. data/spec/dummy/db/migrate/149_create_message_templates.rb +0 -18
  300. data/spec/dummy/db/migrate/154_create_messages.rb +0 -23
  301. data/spec/dummy/db/migrate/20080819181903_create_message_requests.rb +0 -18
  302. data/spec/dummy/db/migrate/20090831220301_create_lending_policies.rb +0 -21
  303. data/spec/dummy/db/migrate/20110913115320_add_lft_and_rgt_to_message.rb +0 -11
  304. data/spec/dummy/db/migrate/20120125050502_add_depth_to_message.rb +0 -6
  305. data/spec/dummy/db/migrate/20120413170705_add_error_message_to_resource_import_file.rb +0 -5
  306. data/spec/dummy/db/migrate/20120413170720_add_error_message_to_agent_import_file.rb +0 -5
  307. data/spec/dummy/db/migrate/20140518111006_create_message_transitions.rb +0 -18
  308. data/spec/dummy/db/migrate/20140518135713_create_message_request_transitions.rb +0 -18
  309. data/spec/dummy/db/migrate/20140822114527_add_error_message_to_resource_import_result.rb +0 -5
  310. data/spec/dummy/db/migrate/20150117111136_add_foreign_key_to_items_referencing_manifestations.rb +0 -5
  311. data/spec/dummy/db/migrate/20150506105356_add_error_message_to_user_import_result.rb +0 -5
  312. data/spec/dummy/db/migrate/20160703185015_add_most_recent_to_message_transitions.rb +0 -9
  313. data/spec/dummy/db/migrate/20160703190209_add_foreign_key_on_manifestation_id_to_reserve.rb +0 -5
  314. data/spec/dummy/db/migrate/20160811102604_add_picture_width_to_picture_file.rb +0 -6
  315. data/spec/dummy/db/migrate/20160814165332_add_most_recent_to_message_request_transitions.rb +0 -9
  316. data/spec/dummy/db/migrate/20160820004638_add_attachment_attachment_to_carrier_types.rb +0 -11
  317. data/spec/dummy/db/migrate/20170116134107_create_issn_record_and_manifestations.rb +0 -11
  318. data/spec/dummy/db/migrate/20170116134120_create_isbn_record_and_manifestations.rb +0 -11
  319. data/spec/dummy/db/migrate/20170305064014_add_csv_charset_conversion_to_library_group.rb +0 -5
  320. data/spec/dummy/db/migrate/20171014084528_add_header_logo_to_library_group.rb +0 -5
  321. data/spec/dummy/db/migrate/20171119051258_set_not_null_to_manifestation_id_on_items.rb +0 -5
  322. data/spec/dummy/db/migrate/20171126133835_rename_login_banner_to_old_login_banner.rb +0 -5
  323. data/spec/dummy/db/migrate/20171126135238_add_foreign_key_to_library_group_id_on_library.rb +0 -5
  324. data/spec/dummy/db/migrate/20180102162311_add_header_logo_meta_to_library_group.rb +0 -5
  325. data/spec/dummy/db/migrate/20180107160726_add_constraints_to_most_recent_for_user_import_file_transitions.rb +0 -13
  326. data/spec/dummy/db/migrate/20180107160740_add_constraints_to_most_recent_for_user_export_file_transitions.rb +0 -13
  327. data/spec/dummy/db/migrate/20180107161311_add_constraints_to_most_recent_for_agent_import_file_transitions.rb +0 -13
  328. data/spec/dummy/db/migrate/20180107161331_add_constraints_to_most_recent_for_resource_import_file_transitions.rb +0 -13
  329. data/spec/dummy/db/migrate/20180107161347_add_constraints_to_most_recent_for_resource_export_file_transitions.rb +0 -13
  330. data/spec/dummy/db/migrate/20180107161410_add_constraints_to_most_recent_for_import_request_transitions.rb +0 -13
  331. data/spec/dummy/db/migrate/20180107162659_add_constraints_to_most_recent_for_message_transitions.rb +0 -13
  332. data/spec/dummy/db/migrate/20180107162711_add_constraints_to_most_recent_for_message_request_transitions.rb +0 -13
  333. data/spec/dummy/db/migrate/20181026064038_add_login_banner_to_library_group.rb +0 -6
  334. data/spec/dummy/db/migrate/20181030072731_add_not_null_to_position_on_carrier_type.rb +0 -14
  335. data/spec/dummy/db/migrate/20181030074920_add_not_null_to_position_on_library.rb +0 -14
  336. data/spec/dummy/db/migrate/20190208135957_create_active_storage_tables.active_storage.rb +0 -27
  337. data/spec/dummy/db/migrate/20190311154610_create_periodicals.rb +0 -10
  338. data/spec/dummy/db/migrate/20190314151124_add_full_name_translations_to_create.rb +0 -7
  339. data/spec/dummy/package.json +0 -5
  340. data/spec/fixtures/message_requests.yml +0 -26
  341. data/spec/fixtures/message_templates.yml +0 -98
  342. data/spec/fixtures/messages.yml +0 -56
  343. data/spec/system/profiles_spec.rb +0 -39
  344. data/spec/views/roles/edit.html.erb_spec.rb +0 -18
  345. data/spec/views/roles/index.html.erb_spec.rb +0 -14
  346. data/spec/views/roles/new.html.erb_spec.rb +0 -18
  347. data/spec/views/roles/show.html.erb_spec.rb +0 -14
@@ -3,11 +3,11 @@ require 'rails_helper'
3
3
  describe ProfilesController do
4
4
  fixtures :all
5
5
 
6
- describe "GET index" do
7
- describe "When logged in as Administrator" do
6
+ describe 'GET index' do
7
+ describe 'When logged in as Administrator' do
8
8
  login_fixture_admin
9
9
 
10
- it "assigns all profiles as @profiles" do
10
+ it 'assigns all profiles as @profiles' do
11
11
  get :index
12
12
  Sunspot.session.should be_a_search_for(Profile)
13
13
  Sunspot.session.should have_search_params(:fulltext, '')
@@ -15,17 +15,17 @@ describe ProfilesController do
15
15
  end
16
16
  end
17
17
 
18
- describe "When logged in as Librarian" do
18
+ describe 'When logged in as Librarian' do
19
19
  login_fixture_librarian
20
20
 
21
- it "assigns all profiles as @profiles" do
21
+ it 'assigns all profiles as @profiles' do
22
22
  get :index
23
23
  Sunspot.session.should be_a_search_for(Profile)
24
24
  Sunspot.session.should have_search_params(:fulltext, '')
25
25
  assigns(:profiles).should_not be_nil
26
26
  end
27
27
 
28
- it "should get index with query" do
28
+ it 'should get index with query' do
29
29
  get :index, params: { query: 'user1' }
30
30
  response.should be_successful
31
31
  Sunspot.session.should be_a_search_for(Profile)
@@ -33,7 +33,7 @@ describe ProfilesController do
33
33
  assigns(:profiles).should_not be_nil
34
34
  end
35
35
 
36
- it "should get sorted index" do
36
+ it 'should get sorted index' do
37
37
  get :index, params: { query: 'user1', sort_by: 'username', order: 'desc' }
38
38
  response.should be_successful
39
39
  Sunspot.session.should be_a_search_for(Profile)
@@ -43,18 +43,18 @@ describe ProfilesController do
43
43
  end
44
44
  end
45
45
 
46
- describe "When logged in as User" do
46
+ describe 'When logged in as User' do
47
47
  login_fixture_user
48
48
 
49
- it "assigns all profiles as @profiles" do
49
+ it 'assigns all profiles as @profiles' do
50
50
  get :index
51
51
  assigns(:profiles).should be_nil
52
52
  response.should be_forbidden
53
53
  end
54
54
  end
55
55
 
56
- describe "When not logged in" do
57
- it "assigns all profiles as @profiles" do
56
+ describe 'When not logged in' do
57
+ it 'assigns all profiles as @profiles' do
58
58
  get :index
59
59
  assigns(:profiles).should be_nil
60
60
  response.should redirect_to(new_user_session_url)
@@ -62,15 +62,15 @@ describe ProfilesController do
62
62
  end
63
63
  end
64
64
 
65
- describe "GET show" do
66
- describe "When logged in as Administrator" do
65
+ describe 'GET show' do
66
+ describe 'When logged in as Administrator' do
67
67
  login_fixture_admin
68
68
 
69
- it "assigns the requested user as @profile" do
69
+ it 'assigns the requested user as @profile' do
70
70
  get :show, params: { id: profiles(:admin).id }
71
71
  assigns(:profile).should eq(profiles(:admin))
72
72
  end
73
- it "assigns the another requested user as @profile" do
73
+ it 'assigns the another requested user as @profile' do
74
74
  admin_profile = FactoryBot.create :admin_profile
75
75
  get :show, params: { id: admin_profile.id }
76
76
  expect(response).not_to be_forbidden
@@ -78,19 +78,19 @@ describe ProfilesController do
78
78
  end
79
79
  end
80
80
 
81
- describe "When logged in as Librarian" do
81
+ describe 'When logged in as Librarian' do
82
82
  login_fixture_librarian
83
83
 
84
- it "assigns the requested user as @profile" do
84
+ it 'assigns the requested user as @profile' do
85
85
  get :show, params: { id: profiles(:librarian1).id }
86
86
  assigns(:profile).should eq(profiles(:librarian1))
87
87
  end
88
- it "should not assign the requested user as @admin" do
88
+ it 'should not assign the requested user as @admin' do
89
89
  admin = FactoryBot.create(:admin_profile)
90
90
  get :show, params: { id: admin.id }
91
91
  response.should be_forbidden
92
92
  end
93
- it "should assign the requested user as @librarian" do
93
+ it 'should assign the requested user as @librarian' do
94
94
  librarian = FactoryBot.create(:librarian_profile)
95
95
  get :show, params: { id: librarian.id }
96
96
  response.should_not be_forbidden
@@ -98,15 +98,15 @@ describe ProfilesController do
98
98
  end
99
99
  end
100
100
 
101
- describe "When logged in as User" do
101
+ describe 'When logged in as User' do
102
102
  login_fixture_user
103
103
 
104
- it "assigns the requested user as @profile" do
104
+ it 'assigns the requested user as @profile' do
105
105
  get :show, params: { id: profiles(:user1).id }
106
106
  assigns(:profile).should eq(profiles(:user1))
107
107
  end
108
108
 
109
- it "should redirect to my user account" do
109
+ it 'should redirect to my user account' do
110
110
  get :show, params: { id: profiles(:user1).id }
111
111
  assert_redirected_to my_account_url
112
112
  end
@@ -118,46 +118,46 @@ describe ProfilesController do
118
118
  end
119
119
  end
120
120
 
121
- describe "When not logged in" do
122
- it "assigns the requested user as @profile" do
121
+ describe 'When not logged in' do
122
+ it 'assigns the requested user as @profile' do
123
123
  get :show, params: { id: profiles(:admin).id }
124
- assigns(:profile).should eq nil
124
+ assigns(:profile).should eq(profiles(:admin))
125
125
  response.should redirect_to(new_user_session_url)
126
126
  end
127
127
  end
128
128
  end
129
129
 
130
- describe "GET new" do
131
- describe "When logged in as Administrator" do
130
+ describe 'GET new' do
131
+ describe 'When logged in as Administrator' do
132
132
  login_fixture_admin
133
133
 
134
- it "assigns the requested user as @profile" do
134
+ it 'assigns the requested user as @profile' do
135
135
  get :new
136
136
  assigns(:profile).should_not be_valid
137
137
  end
138
138
  end
139
139
 
140
- describe "When logged in as Librarian" do
140
+ describe 'When logged in as Librarian' do
141
141
  login_fixture_librarian
142
142
 
143
- it "should not assign the requested user as @profile" do
143
+ it 'should not assign the requested user as @profile' do
144
144
  get :new
145
145
  assigns(:profile).should_not be_valid
146
146
  end
147
147
  end
148
148
 
149
- describe "When logged in as User" do
149
+ describe 'When logged in as User' do
150
150
  login_fixture_user
151
151
 
152
- it "should not assign the requested user as @profile" do
152
+ it 'should not assign the requested user as @profile' do
153
153
  get :new
154
154
  assigns(:profile).should be_nil
155
155
  response.should be_forbidden
156
156
  end
157
157
  end
158
158
 
159
- describe "When not logged in" do
160
- it "should not assign the requested user as @profile" do
159
+ describe 'When not logged in' do
160
+ it 'should not assign the requested user as @profile' do
161
161
  get :new
162
162
  assigns(:profile).should be_nil
163
163
  response.should redirect_to(new_user_session_url)
@@ -165,39 +165,39 @@ describe ProfilesController do
165
165
  end
166
166
  end
167
167
 
168
- describe "GET edit" do
169
- describe "When logged in as Administrator" do
168
+ describe 'GET edit' do
169
+ describe 'When logged in as Administrator' do
170
170
  login_fixture_admin
171
171
 
172
- it "assigns the requested user as @profile" do
172
+ it 'assigns the requested user as @profile' do
173
173
  profile = FactoryBot.create(:profile)
174
174
  get :edit, params: { id: profile.id }
175
175
  assigns(:profile).should eq(profile)
176
176
  end
177
177
  end
178
178
 
179
- describe "When logged in as Librarian" do
179
+ describe 'When logged in as Librarian' do
180
180
  login_fixture_librarian
181
181
 
182
- it "should assign the requested user as @profile" do
182
+ it 'should assign the requested user as @profile' do
183
183
  profile = FactoryBot.create(:profile)
184
184
  get :edit, params: { id: profile.id }
185
185
  assigns(:profile).should eq(profile)
186
186
  end
187
- it "should not get edit page for admin required user" do
187
+ it 'should not get edit page for admin required user' do
188
188
  admin = FactoryBot.create(:admin_profile)
189
189
  get :edit, params: { id: admin.id }
190
190
  response.should be_forbidden
191
191
  # assigns(:profile).should_not eq(admin)
192
192
  end
193
- it "should get edit page for other librarian user" do
193
+ it 'should get edit page for other librarian user' do
194
194
  librarian = FactoryBot.create(:librarian_profile)
195
195
  get :edit, params: { id: librarian.id }
196
196
  response.should_not be_forbidden
197
197
  assigns(:profile).should eq librarian
198
198
  end
199
199
 
200
- it "should get edit page for other librarian user" do
200
+ it 'should get edit page for other librarian user' do
201
201
  admin = FactoryBot.create(:admin_profile, required_role_id: Role.where(name: 'Librarian').first.id)
202
202
  get :edit, params: { id: admin.id }
203
203
  response.should be_forbidden
@@ -205,148 +205,148 @@ describe ProfilesController do
205
205
  end
206
206
  end
207
207
 
208
- describe "When logged in as User" do
208
+ describe 'When logged in as User' do
209
209
  login_fixture_user
210
210
 
211
- it "should not assign the requested user as @profile" do
211
+ it 'should not assign the requested user as @profile' do
212
212
  profile = FactoryBot.create(:profile)
213
213
  get :edit, params: { id: profile.id }
214
214
  assigns(:profile).should eq(profile)
215
215
  response.should be_forbidden
216
216
  end
217
217
 
218
- it "should edit myself" do
218
+ it 'should edit myself' do
219
219
  get :edit, params: { id: profiles(:user1).id }
220
220
  response.should redirect_to edit_my_account_url
221
221
  end
222
222
  end
223
223
 
224
- describe "When not logged in" do
225
- it "should not assign the requested user as @profile" do
224
+ describe 'When not logged in' do
225
+ it 'should not assign the requested user as @profile' do
226
226
  profile = FactoryBot.create(:profile)
227
227
  get :edit, params: { id: profile.id }
228
- assigns(:profile).should eq nil
228
+ assigns(:profile).should eq(profile)
229
229
  response.should redirect_to(new_user_session_url)
230
230
  end
231
231
  end
232
232
  end
233
233
 
234
- describe "POST create" do
234
+ describe 'POST create' do
235
235
  before(:each) do
236
236
  @attrs = FactoryBot.attributes_for(:profile)
237
237
  @invalid_attrs = { user_group_id: '', user_number: '日本語' }
238
238
  end
239
239
 
240
- describe "When logged in as Administrator" do
240
+ describe 'When logged in as Administrator' do
241
241
  login_fixture_admin
242
242
 
243
- describe "with valid params" do
244
- it "assigns a newly created user as @profile" do
243
+ describe 'with valid params' do
244
+ it 'assigns a newly created user as @profile' do
245
245
  post :create, params: { profile: @attrs }
246
246
  assigns(:profile).should be_valid
247
247
  end
248
248
 
249
- it "redirects to the created user" do
249
+ it 'redirects to the created user' do
250
250
  post :create, params: { profile: @attrs }
251
251
  response.should redirect_to(profile_url(assigns(:profile)))
252
252
  end
253
253
  end
254
254
 
255
- describe "with invalid params" do
256
- it "assigns a newly created but unsaved user as @profile" do
255
+ describe 'with invalid params' do
256
+ it 'assigns a newly created but unsaved user as @profile' do
257
257
  post :create, params: { profile: @invalid_attrs }
258
258
  assigns(:profile).should_not be_valid
259
259
  end
260
260
 
261
261
  it "re-renders the 'new' template" do
262
262
  post :create, params: { profile: @invalid_attrs }
263
- response.should render_template("new")
263
+ response.should render_template('new')
264
264
  end
265
265
  end
266
266
  end
267
267
 
268
- describe "When logged in as Librarian" do
268
+ describe 'When logged in as Librarian' do
269
269
  login_fixture_librarian
270
270
 
271
- describe "with valid params" do
272
- it "assigns a newly created user as @profile" do
271
+ describe 'with valid params' do
272
+ it 'assigns a newly created user as @profile' do
273
273
  post :create, params: { profile: @attrs }
274
274
  assigns(:profile).should be_valid
275
275
  end
276
276
 
277
- it "redirects to the created user" do
277
+ it 'redirects to the created user' do
278
278
  post :create, params: { profile: @attrs }
279
279
  response.should redirect_to(profile_url(assigns(:profile)))
280
280
  end
281
281
  end
282
282
 
283
- describe "with invalid params" do
284
- it "assigns a newly created but unsaved user as @profile" do
283
+ describe 'with invalid params' do
284
+ it 'assigns a newly created but unsaved user as @profile' do
285
285
  post :create, params: { profile: @invalid_attrs }
286
286
  assigns(:profile).should_not be_valid
287
287
  end
288
288
 
289
289
  it "re-renders the 'new' template" do
290
290
  post :create, params: { profile: @invalid_attrs }
291
- response.should render_template("new")
291
+ response.should render_template('new')
292
292
  end
293
293
  end
294
294
  end
295
295
 
296
- describe "When logged in as User" do
296
+ describe 'When logged in as User' do
297
297
  login_fixture_user
298
298
 
299
- it "should not create user" do
299
+ it 'should not create user' do
300
300
  post :create, params: { profile: { username: 'test10' } }
301
301
  assigns(:profile).should be_nil
302
302
  response.should be_forbidden
303
303
  end
304
304
  end
305
305
 
306
- describe "When not logged in" do
307
- it "should not create user" do
306
+ describe 'When not logged in' do
307
+ it 'should not create user' do
308
308
  post :create, params: { profile: { username: 'test10' } }
309
309
  response.should redirect_to new_user_session_url
310
310
  end
311
311
  end
312
312
  end
313
313
 
314
- describe "PUT update" do
314
+ describe 'PUT update' do
315
315
  before(:each) do
316
316
  @profile = profiles(:user1)
317
- @attrs = { user_group_id: '3', locale: 'en' }
317
+ @attrs = { user_group_id: user_groups(:user_group_00003).id, locale: 'en' }
318
318
  @invalid_attrs = { user_group_id: '', user_number: '日本語' }
319
319
  end
320
320
 
321
- describe "When logged in as Administrator" do
321
+ describe 'When logged in as Administrator' do
322
322
  login_fixture_admin
323
323
 
324
- describe "with valid params" do
325
- it "updates the requested user" do
324
+ describe 'with valid params' do
325
+ it 'updates the requested user' do
326
326
  put :update, params: { id: @profile.id, profile: @attrs }
327
327
  end
328
328
 
329
- it "assigns the requested user as @profile" do
329
+ it 'assigns the requested user as @profile' do
330
330
  put :update, params: { id: @profile.id, profile: @attrs }
331
331
  assigns(:profile).should eq(@profile)
332
332
  end
333
333
 
334
- it "redirects to the user" do
334
+ it 'redirects to the user' do
335
335
  put :update, params: { id: @profile.id, profile: @attrs }
336
336
  assigns(:profile).should eq(@profile)
337
337
  response.should redirect_to(@profile)
338
338
  end
339
339
  end
340
340
 
341
- describe "with invalid params" do
342
- it "assigns the requested user as @profile" do
341
+ describe 'with invalid params' do
342
+ it 'assigns the requested user as @profile' do
343
343
  put :update, params: { id: @profile.id, profile: @invalid_attrs }
344
344
  assigns(:profile).should eq(@profile)
345
345
  end
346
346
 
347
347
  it "re-renders the 'edit' template" do
348
348
  put :update, params: { id: @profile, profile: @invalid_attrs }
349
- response.should render_template("edit")
349
+ response.should render_template('edit')
350
350
  end
351
351
  end
352
352
 
@@ -358,56 +358,56 @@ describe ProfilesController do
358
358
  end
359
359
  end
360
360
 
361
- describe "When logged in as Librarian" do
361
+ describe 'When logged in as Librarian' do
362
362
  login_fixture_librarian
363
363
 
364
- describe "with valid params" do
365
- it "updates the requested user" do
364
+ describe 'with valid params' do
365
+ it 'updates the requested user' do
366
366
  put :update, params: { id: @profile.id, profile: @attrs }
367
367
  end
368
368
 
369
- it "assigns the requested user as @profile" do
369
+ it 'assigns the requested user as @profile' do
370
370
  put :update, params: { id: @profile.id, profile: @attrs }
371
371
  assigns(:profile).should eq(@profile)
372
372
  end
373
373
 
374
- it "redirects to the user" do
374
+ it 'redirects to the user' do
375
375
  put :update, params: { id: @profile.id, profile: @attrs }
376
376
  assigns(:profile).should eq(@profile)
377
377
  response.should redirect_to(@profile)
378
378
  end
379
379
  end
380
380
 
381
- describe "with invalid params" do
382
- it "assigns the user as @profile" do
381
+ describe 'with invalid params' do
382
+ it 'assigns the user as @profile' do
383
383
  put :update, params: { id: @profile, profile: @invalid_attrs }
384
384
  assigns(:profile).should_not be_valid
385
385
  end
386
386
 
387
387
  it "re-renders the 'edit' template" do
388
388
  put :update, params: { id: @profile, profile: @invalid_attrs }
389
- response.should render_template("edit")
389
+ response.should render_template('edit')
390
390
  end
391
391
  end
392
392
 
393
- it "should update other user" do
394
- put :update, params: { id: profiles(:user1).id, profile: { user_number: '00003', locale: 'en', user_group_id: 3, library_id: 3, note: 'test' } }
393
+ it 'should update other user' do
394
+ put :update, params: { id: profiles(:user1).id, profile: { user_number: '00003', locale: 'en', user_group_id: user_groups(:user_group_00003).id, library_id: libraries(:library_00003).id, note: 'test' } }
395
395
  response.should redirect_to profile_url(assigns(:profile))
396
396
  end
397
397
 
398
- it "should not update other admin" do
399
- put :update, params: { id: profiles(:admin).id, profile: { user_number: '00003', locale: 'en', user_group_id: 3, library_id: 3, note: 'test' } }
398
+ it 'should not update other admin' do
399
+ put :update, params: { id: profiles(:admin).id, profile: { user_number: '00003', locale: 'en', user_group_id: user_groups(:user_group_00003).id, library_id: libraries(:library_00003).id, note: 'test' } }
400
400
  response.should be_forbidden
401
401
  end
402
402
 
403
403
  it "should update other user's user_group" do
404
- put :update, params: { id: profiles(:user1).id, profile: { user_group_id: 3, library_id: 3, locale: 'en' } }
404
+ put :update, params: { id: profiles(:user1).id, profile: { user_group_id: user_groups(:user_group_00003).id, library_id: libraries(:library_00003).id, locale: 'en' } }
405
405
  response.should redirect_to profile_url(assigns(:profile))
406
- assigns(:profile).user_group_id.should eq 3
406
+ assigns(:profile).user_group_id.should eq user_groups(:user_group_00003).id
407
407
  end
408
408
 
409
409
  it "should update other user's note" do
410
- put :update, params: { id: profiles(:user1).id, profile: { user_group_id: 3, library_id: 3, note: 'test', locale: 'en' } }
410
+ put :update, params: { id: profiles(:user1).id, profile: { user_group_id: user_groups(:user_group_00003).id, library_id: libraries(:library_00003).id, note: 'test', locale: 'en' } }
411
411
  response.should redirect_to profile_url(assigns(:profile))
412
412
  assert_equal assigns(:profile).note, 'test'
413
413
  end
@@ -418,33 +418,25 @@ describe ProfilesController do
418
418
  assigns(:profile).user.locked_at.should be_truthy
419
419
  assigns(:profile).user.access_locked?.should be_truthy
420
420
  end
421
-
422
- it "should unlock other user" do
423
- profiles(:user1).user.lock_access!
424
- put :update, params: { id: profiles(:user1).id, profile: { user_attributes: { id: 3, locked: '0', username: 'user1' } } }
425
- response.should redirect_to profile_url(assigns(:profile))
426
- expect(assigns(:profile).user.locked_at).to be_falsy
427
- expect(assigns(:profile).user.access_locked?).to be_falsy
428
- end
429
421
  end
430
422
 
431
- describe "When logged in as User" do
423
+ describe 'When logged in as User' do
432
424
  login_fixture_user
433
425
 
434
- describe "with valid params" do
435
- it "updates the requested user" do
426
+ describe 'with valid params' do
427
+ it 'updates the requested user' do
436
428
  put :update, params: { id: @profile.id, profile: @attrs }
437
429
  end
438
430
 
439
- it "assigns the requested user as @profile" do
431
+ it 'assigns the requested user as @profile' do
440
432
  put :update, params: { id: @profile.id, profile: @attrs }
441
433
  assigns(:profile).should be_valid
442
434
  response.should redirect_to profile_url(assigns(:profile))
443
435
  end
444
436
  end
445
437
 
446
- describe "with invalid params" do
447
- it "assigns the requested user as @profile" do
438
+ describe 'with invalid params' do
439
+ it 'assigns the requested user as @profile' do
448
440
  put :update, params: { id: @profile.id, profile: @invalid_attrs }
449
441
  # assigns(:profile).should_not be_valid
450
442
  # response.should be_successful
@@ -453,57 +445,57 @@ describe ProfilesController do
453
445
  end
454
446
  end
455
447
 
456
- it "should update myself" do
448
+ it 'should update myself' do
457
449
  put :update, params: { id: profiles(:user1).id, profile: { keyword_list: 'test' } }
458
450
  response.should redirect_to profile_url(assigns(:profile))
459
451
  end
460
452
 
461
- it "should not update my role" do
453
+ it 'should not update my role' do
462
454
  put :update, params: { id: profiles(:user1).id, profile: { user_has_role_attributes: { role_id: 4 } } }
463
455
  response.should redirect_to profile_url(assigns(:profile))
464
456
  assigns(:profile).user.role.should_not eq Role.where(name: 'Administrator').first
465
457
  end
466
458
 
467
- it "should not update my user_group" do
468
- put :update, params: { id: profiles(:user1).id, profile: { user_group_id: 3, library_id: 3 } }
459
+ it 'should not update my user_group' do
460
+ put :update, params: { id: profiles(:user1).id, profile: { user_group_id: user_groups(:user_group_00003).id, library_id: libraries(:library_00003).id } }
469
461
  response.should redirect_to profile_url(assigns(:profile))
470
- assigns(:profile).user_group_id.should eq 1
462
+ assigns(:profile).user_group_id.should eq user_groups(:user_group_00001).id
471
463
  end
472
464
 
473
- it "should not update my note" do
474
- put :update, params: { id: profiles(:user1).id, profile: { user_group_id: 3, library_id: 3, note: 'test' } }
465
+ it 'should not update my note' do
466
+ put :update, params: { id: profiles(:user1).id, profile: { user_group_id: user_groups(:user_group_00003).id, library_id: libraries(:library_00003).id, note: 'test' } }
475
467
  response.should redirect_to profile_url(assigns(:profile))
476
468
  assigns(:profile).note.should be_nil
477
469
  end
478
470
 
479
- it "should update my keyword_list" do
471
+ it 'should update my keyword_list' do
480
472
  put :update, params: { id: profiles(:user1).id, profile: { keyword_list: 'test' } }
481
473
  response.should redirect_to profile_url(assigns(:profile))
482
474
  assigns(:profile).keyword_list.should eq 'test'
483
475
  assigns(:profile).user.role.name.should eq 'User'
484
476
  end
485
477
 
486
- it "should not update other user" do
478
+ it 'should not update other user' do
487
479
  put :update, params: { id: profiles(:user2).id, profile: {} }
488
480
  assigns(:profile).should be_valid
489
481
  response.should be_forbidden
490
482
  end
491
483
  end
492
484
 
493
- describe "When not logged in" do
494
- describe "with valid params" do
495
- it "updates the requested user" do
485
+ describe 'When not logged in' do
486
+ describe 'with valid params' do
487
+ it 'updates the requested user' do
496
488
  put :update, params: { id: @profile.id, profile: @attrs }
497
489
  end
498
490
 
499
- it "should be forbidden" do
491
+ it 'should be forbidden' do
500
492
  put :update, params: { id: @profile.id, profile: @attrs }
501
493
  response.should redirect_to(new_user_session_url)
502
494
  end
503
495
  end
504
496
 
505
- describe "with invalid params" do
506
- it "assigns the requested user as @profile" do
497
+ describe 'with invalid params' do
498
+ it 'assigns the requested user as @profile' do
507
499
  put :update, params: { id: @profile.id, profile: @invalid_attrs }
508
500
  response.should redirect_to(new_user_session_url)
509
501
  end
@@ -511,86 +503,89 @@ describe ProfilesController do
511
503
  end
512
504
  end
513
505
 
514
- describe "DELETE destroy" do
515
- describe "When logged in as Administrator" do
506
+ describe 'DELETE destroy' do
507
+ before(:each) do
508
+ @profile = FactoryBot.create(:profile)
509
+ end
510
+
511
+ describe 'When logged in as Administrator' do
516
512
  login_fixture_admin
517
513
 
518
- it "destroys the requested user" do
519
- delete :destroy, params: { id: profiles(:user2).id }
514
+ it 'destroys the requested user' do
515
+ delete :destroy, params: { id: @profile.id }
520
516
  end
521
517
 
522
- it "redirects to the profiles list" do
523
- delete :destroy, params: { id: profiles(:user2).id }
518
+ it 'redirects to the profiles list' do
519
+ delete :destroy, params: { id: @profile.id }
524
520
  response.should redirect_to(profiles_url)
525
521
  end
526
522
 
527
- it "should destroy librarian" do
528
- delete :destroy, params: { id: profiles(:librarian2).id }
523
+ it 'should destroy librarian' do
524
+ delete :destroy, params: { id: FactoryBot.create(:librarian).profile.id }
529
525
  response.should redirect_to(profiles_url)
530
526
  end
531
527
  end
532
528
 
533
- describe "When logged in as Librarian" do
529
+ describe 'When logged in as Librarian' do
534
530
  login_fixture_librarian
535
531
 
536
- it "destroys the requested user" do
537
- delete :destroy, params: { id: profiles(:user2).id }
532
+ it 'destroys the requested user' do
533
+ delete :destroy, params: { id: @profile.id }
538
534
  response.should redirect_to(profiles_url)
539
535
  end
540
536
 
541
- it "redirects to the profiles list" do
542
- delete :destroy, params: { id: profiles(:user2).id }
537
+ it 'redirects to the profiles list' do
538
+ delete :destroy, params: { id: @profile.id }
543
539
  response.should redirect_to(profiles_url)
544
540
  end
545
541
 
546
- it "should not destroy librarian" do
547
- delete :destroy, params: { id: profiles(:librarian2).id }
542
+ it 'should not destroy librarian' do
543
+ delete :destroy, params: { id: FactoryBot.create(:librarian_profile).id }
548
544
  response.should be_forbidden
549
545
  end
550
546
 
551
- it "should not destroy admin" do
547
+ it 'should not destroy admin' do
552
548
  delete :destroy, params: { id: profiles(:admin).id }
553
549
  response.should be_forbidden
554
550
  end
555
551
 
556
- it "should not destroy myself" do
552
+ it 'should not destroy myself' do
557
553
  delete :destroy, params: { id: profiles(:librarian1).id }
558
554
  response.should be_forbidden
559
555
  end
560
556
 
561
- it "should not be able to delete other librarian user" do
562
- librarian = FactoryBot.create(:librarian_profile)
563
- delete :destroy, params: { id: librarian.id }
557
+ it 'should not be able to delete other librarian user' do
558
+ delete :destroy, params: { id: FactoryBot.create(:librarian_profile).id }
564
559
  response.should be_forbidden
565
560
  end
566
561
  end
567
562
 
568
- describe "When logged in as User" do
563
+ describe 'When logged in as User' do
569
564
  login_fixture_user
570
565
 
571
- it "destroys the requested user" do
572
- delete :destroy, params: { id: profiles(:user2).id }
566
+ it 'destroys the requested user' do
567
+ delete :destroy, params: { id: @profile.id }
573
568
  end
574
569
 
575
- it "should be forbidden" do
576
- delete :destroy, params: { id: profiles(:user2).id }
570
+ it 'should be forbidden' do
571
+ delete :destroy, params: { id: @profile.id }
577
572
  response.should be_forbidden
578
573
  end
579
574
 
580
- it "should not destroy myself" do
575
+ it 'should not destroy myself' do
581
576
  delete :destroy, params: { id: profiles(:user1).id }
582
577
  response.should be_forbidden
583
578
  end
584
579
  end
585
580
 
586
- describe "When not logged in" do
587
- it "destroys the requested user" do
588
- delete :destroy, params: { id: profiles(:user2).id }
581
+ describe 'When not logged in' do
582
+ it 'destroys the requested user' do
583
+ delete :destroy, params: { id: @profile.id }
589
584
  response.should redirect_to(new_user_session_url)
590
585
  end
591
586
 
592
- it "should be forbidden" do
593
- delete :destroy, params: { id: profiles(:user2).id }
587
+ it 'should be forbidden' do
588
+ delete :destroy, params: { id: @profile.id }
594
589
  response.should redirect_to(new_user_session_url)
595
590
  end
596
591
  end