hyrax 2.6.0 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (708) hide show
  1. checksums.yaml +4 -4
  2. data/app/actors/hyrax/actors/file_set_actor.rb +2 -2
  3. data/app/assets/javascripts/hyrax/collections/editor.es6 +12 -2
  4. data/app/indexers/hyrax/collection_indexer.rb +1 -3
  5. data/app/models/concerns/hyrax/collection_behavior.rb +8 -34
  6. data/app/presenters/hyrax/collection_presenter.rb +12 -1
  7. data/hyrax.gemspec +1 -2
  8. data/lib/hyrax/version.rb +1 -1
  9. metadata +5 -1402
  10. data/spec/.gitignore +0 -1
  11. data/spec/abilities/ability_spec.rb +0 -183
  12. data/spec/abilities/admin_ability_spec.rb +0 -18
  13. data/spec/abilities/admin_set_ability_spec.rb +0 -177
  14. data/spec/abilities/collection_ability_spec.rb +0 -194
  15. data/spec/abilities/collection_type_ability_spec.rb +0 -72
  16. data/spec/abilities/embargo_and_lease_ability_spec.rb +0 -22
  17. data/spec/abilities/file_set_abilities_spec.rb +0 -70
  18. data/spec/abilities/generic_work_abilities_spec.rb +0 -63
  19. data/spec/abilities/operation_ability_spec.rb +0 -12
  20. data/spec/abilities/permission_template_ability_spec.rb +0 -145
  21. data/spec/abilities/proxies_and_transfer_abilities_spec.rb +0 -109
  22. data/spec/abilities/solr_document_ability_spec.rb +0 -27
  23. data/spec/actors/hyrax/actors/apply_order_actor_spec.rb +0 -92
  24. data/spec/actors/hyrax/actors/apply_permission_template_actor_spec.rb +0 -135
  25. data/spec/actors/hyrax/actors/attach_members_actor_spec.rb +0 -68
  26. data/spec/actors/hyrax/actors/cleanup_file_sets_actor_spec.rb +0 -24
  27. data/spec/actors/hyrax/actors/cleanup_trophies_actor_spec.rb +0 -25
  28. data/spec/actors/hyrax/actors/collections_membership_actor_spec.rb +0 -364
  29. data/spec/actors/hyrax/actors/create_with_files_actor_spec.rb +0 -60
  30. data/spec/actors/hyrax/actors/create_with_files_ordered_members_actor_spec.rb +0 -41
  31. data/spec/actors/hyrax/actors/create_with_remote_files_actor_spec.rb +0 -136
  32. data/spec/actors/hyrax/actors/create_with_remote_files_ordered_members_actor_spec.rb +0 -49
  33. data/spec/actors/hyrax/actors/default_admin_set_actor_spec.rb +0 -81
  34. data/spec/actors/hyrax/actors/embargo_actor_spec.rb +0 -37
  35. data/spec/actors/hyrax/actors/featured_work_actor_spec.rb +0 -38
  36. data/spec/actors/hyrax/actors/file_actor_spec.rb +0 -125
  37. data/spec/actors/hyrax/actors/file_set_actor_spec.rb +0 -347
  38. data/spec/actors/hyrax/actors/file_set_ordered_members_actor_spec.rb +0 -35
  39. data/spec/actors/hyrax/actors/generic_work_actor_spec.rb +0 -316
  40. data/spec/actors/hyrax/actors/initialize_workflow_actor_spec.rb +0 -35
  41. data/spec/actors/hyrax/actors/interpret_visibility_actor_spec.rb +0 -445
  42. data/spec/actors/hyrax/actors/lease_actor_spec.rb +0 -54
  43. data/spec/actors/hyrax/actors/model_actor_spec.rb +0 -24
  44. data/spec/actors/hyrax/actors/optimistic_lock_validator_spec.rb +0 -55
  45. data/spec/actors/hyrax/actors/ordered_members_actor_spec.rb +0 -59
  46. data/spec/actors/hyrax/actors/transactional_request_spec.rb +0 -46
  47. data/spec/actors/hyrax/actors/transfer_request_actor_spec.rb +0 -43
  48. data/spec/authorities/qa/authorities/collections_spec.rb +0 -68
  49. data/spec/authorities/qa/authorities/find_works_spec.rb +0 -52
  50. data/spec/channels/hyrax/application_cable/channel_spec.rb +0 -14
  51. data/spec/channels/hyrax/application_cable/connection_spec.rb +0 -37
  52. data/spec/channels/hyrax/notifications_channel_spec.rb +0 -45
  53. data/spec/config/hyrax_events_spec.rb +0 -44
  54. data/spec/controllers/catalog_controller_spec.rb +0 -135
  55. data/spec/controllers/hyrax/accepts_batches_controller_spec.rb +0 -67
  56. data/spec/controllers/hyrax/admin/admin_sets_controller_spec.rb +0 -284
  57. data/spec/controllers/hyrax/admin/appearances_controller_spec.rb +0 -66
  58. data/spec/controllers/hyrax/admin/collection_type_participants_controller_spec.rb +0 -152
  59. data/spec/controllers/hyrax/admin/collection_types_controller_spec.rb +0 -322
  60. data/spec/controllers/hyrax/admin/features_controller_spec.rb +0 -31
  61. data/spec/controllers/hyrax/admin/permission_template_accesses_controller_spec.rb +0 -101
  62. data/spec/controllers/hyrax/admin/permission_templates_controller_spec.rb +0 -71
  63. data/spec/controllers/hyrax/admin/stats_controller_spec.rb +0 -61
  64. data/spec/controllers/hyrax/admin/strategies_controller_spec.rb +0 -39
  65. data/spec/controllers/hyrax/admin/users_controller_spec.rb +0 -17
  66. data/spec/controllers/hyrax/admin/workflow_roles_controller_spec.rb +0 -76
  67. data/spec/controllers/hyrax/admin/workflows_controller_spec.rb +0 -18
  68. data/spec/controllers/hyrax/api/items_controller_spec.rb +0 -404
  69. data/spec/controllers/hyrax/api/zotero_controller_spec.rb +0 -162
  70. data/spec/controllers/hyrax/batch_edits_controller_spec.rb +0 -232
  71. data/spec/controllers/hyrax/batch_uploads_controller_spec.rb +0 -131
  72. data/spec/controllers/hyrax/citations_controller_spec.rb +0 -61
  73. data/spec/controllers/hyrax/collections_controller_spec.rb +0 -126
  74. data/spec/controllers/hyrax/contact_form_controller_spec.rb +0 -96
  75. data/spec/controllers/hyrax/content_blocks_controller_spec.rb +0 -71
  76. data/spec/controllers/hyrax/dashboard/collection_members_controller_spec.rb +0 -411
  77. data/spec/controllers/hyrax/dashboard/collections_controller_spec.rb +0 -518
  78. data/spec/controllers/hyrax/dashboard/nest_collections_controller_spec.rb +0 -360
  79. data/spec/controllers/hyrax/dashboard/profiles_controller_spec.rb +0 -155
  80. data/spec/controllers/hyrax/dashboard/works_controller_spec.rb +0 -13
  81. data/spec/controllers/hyrax/dashboard_controller_spec.rb +0 -42
  82. data/spec/controllers/hyrax/depositors_controller_spec.rb +0 -105
  83. data/spec/controllers/hyrax/downloads_controller_spec.rb +0 -159
  84. data/spec/controllers/hyrax/embargoes_controller_spec.rb +0 -147
  85. data/spec/controllers/hyrax/featured_work_lists_controller_spec.rb +0 -20
  86. data/spec/controllers/hyrax/featured_works_controller_spec.rb +0 -56
  87. data/spec/controllers/hyrax/file_sets_controller_spec.rb +0 -322
  88. data/spec/controllers/hyrax/fixity_checks_controller_spec.rb +0 -44
  89. data/spec/controllers/hyrax/generic_works_controller_json_spec.rb +0 -92
  90. data/spec/controllers/hyrax/generic_works_controller_spec.rb +0 -622
  91. data/spec/controllers/hyrax/homepage_controller_spec.rb +0 -138
  92. data/spec/controllers/hyrax/leases_controller_spec.rb +0 -117
  93. data/spec/controllers/hyrax/my/collections_controller_spec.rb +0 -36
  94. data/spec/controllers/hyrax/my/highlights_controller_spec.rb +0 -53
  95. data/spec/controllers/hyrax/my/shares_controller_spec.rb +0 -47
  96. data/spec/controllers/hyrax/my/works_controller_spec.rb +0 -54
  97. data/spec/controllers/hyrax/notifications_controller_spec.rb +0 -33
  98. data/spec/controllers/hyrax/operations_controller_spec.rb +0 -27
  99. data/spec/controllers/hyrax/pages_controller_spec.rb +0 -111
  100. data/spec/controllers/hyrax/permissions_controller_spec.rb +0 -56
  101. data/spec/controllers/hyrax/resource_sync_controller_spec.rb +0 -71
  102. data/spec/controllers/hyrax/single_use_links_controller_spec.rb +0 -100
  103. data/spec/controllers/hyrax/single_use_links_viewer_controller_spec.rb +0 -64
  104. data/spec/controllers/hyrax/static_controller_spec.rb +0 -28
  105. data/spec/controllers/hyrax/stats_controller_spec.rb +0 -73
  106. data/spec/controllers/hyrax/transfers_controller_spec.rb +0 -200
  107. data/spec/controllers/hyrax/trophies_controller_spec.rb +0 -40
  108. data/spec/controllers/hyrax/uploads_controller_spec.rb +0 -60
  109. data/spec/controllers/hyrax/users_controller_spec.rb +0 -151
  110. data/spec/controllers/hyrax/workflow_actions_controller_spec.rb +0 -54
  111. data/spec/conversions/power_converters/polymorphic_type_spec.rb +0 -22
  112. data/spec/conversions/power_converters/sipity_action_name_spec.rb +0 -32
  113. data/spec/conversions/power_converters/sipity_action_spec.rb +0 -43
  114. data/spec/conversions/power_converters/sipity_agent_spec.rb +0 -20
  115. data/spec/conversions/power_converters/sipity_entity_spec.rb +0 -53
  116. data/spec/conversions/power_converters/sipity_role_spec.rb +0 -31
  117. data/spec/conversions/power_converters/sipity_workflow_id_spec.rb +0 -28
  118. data/spec/conversions/power_converters/sipity_workflow_state_spec.rb +0 -20
  119. data/spec/factories/admin_sets.rb +0 -25
  120. data/spec/factories/admin_sets_lw.rb +0 -215
  121. data/spec/factories/api_items.rb +0 -91
  122. data/spec/factories/collection_branding_infos.rb +0 -11
  123. data/spec/factories/collection_type_participants.rb +0 -8
  124. data/spec/factories/collection_types.rb +0 -113
  125. data/spec/factories/collections.rb +0 -325
  126. data/spec/factories/collections_factory.rb +0 -134
  127. data/spec/factories/content_blocks.rb +0 -4
  128. data/spec/factories/featured_works.rb +0 -4
  129. data/spec/factories/file_sets.rb +0 -33
  130. data/spec/factories/generic_works.rb +0 -196
  131. data/spec/factories/object_id.rb +0 -6
  132. data/spec/factories/operations.rb +0 -21
  133. data/spec/factories/permission_template_accesses.rb +0 -16
  134. data/spec/factories/permission_templates.rb +0 -79
  135. data/spec/factories/proxy_deposit_requests.rb +0 -6
  136. data/spec/factories/single_use_links.rb +0 -13
  137. data/spec/factories/sipity_entities.rb +0 -7
  138. data/spec/factories/uploaded_files.rb +0 -5
  139. data/spec/factories/users.rb +0 -59
  140. data/spec/factories/workflow_actions.rb +0 -6
  141. data/spec/factories/workflow_states.rb +0 -6
  142. data/spec/factories/workflows.rb +0 -6
  143. data/spec/factory_tests/adminsets_factory_spec.rb +0 -132
  144. data/spec/factory_tests/collections_factory_spec.rb +0 -212
  145. data/spec/features/actor_stack_spec.rb +0 -77
  146. data/spec/features/admin_spec.rb +0 -30
  147. data/spec/features/batch_create_spec.rb +0 -75
  148. data/spec/features/batch_edit_spec.rb +0 -119
  149. data/spec/features/browse_catalog_spec.rb +0 -59
  150. data/spec/features/browse_dashboard_works_spec.rb +0 -56
  151. data/spec/features/catalog_search_spec.rb +0 -72
  152. data/spec/features/collection_multi_membership_spec.rb +0 -205
  153. data/spec/features/collection_spec.rb +0 -122
  154. data/spec/features/collection_type_spec.rb +0 -393
  155. data/spec/features/contact_form_spec.rb +0 -16
  156. data/spec/features/create_child_work_spec.rb +0 -82
  157. data/spec/features/create_work_admin_spec.rb +0 -44
  158. data/spec/features/create_work_spec.rb +0 -124
  159. data/spec/features/dashboard/all_works.rb +0 -23
  160. data/spec/features/dashboard/collection_spec.rb +0 -918
  161. data/spec/features/dashboard/display_admin_dashboard_spec.rb +0 -29
  162. data/spec/features/dashboard/display_dashboard_spec.rb +0 -18
  163. data/spec/features/delete_work_spec.rb +0 -23
  164. data/spec/features/edit_content_block_admin_spec.rb +0 -62
  165. data/spec/features/edit_file_spec.rb +0 -23
  166. data/spec/features/edit_work_spec.rb +0 -61
  167. data/spec/features/embargo_spec.rb +0 -90
  168. data/spec/features/homepage_spec.rb +0 -43
  169. data/spec/features/lease_spec.rb +0 -35
  170. data/spec/features/notifications_spec.rb +0 -20
  171. data/spec/features/ownership_transfer_spec.rb +0 -101
  172. data/spec/features/proxy_spec.rb +0 -25
  173. data/spec/features/search_spec.rb +0 -62
  174. data/spec/features/static_pages_spec.rb +0 -7
  175. data/spec/features/users_spec.rb +0 -48
  176. data/spec/features/work_generator_spec.rb +0 -29
  177. data/spec/features/work_show_spec.rb +0 -148
  178. data/spec/features/workflow_roles_spec.rb +0 -46
  179. data/spec/features/workflow_state_changes_spec.rb +0 -59
  180. data/spec/fixtures/1.5mb-avatar.jpg +0 -0
  181. data/spec/fixtures/4-20.png +0 -0
  182. data/spec/fixtures/Example.ogg +0 -0
  183. data/spec/fixtures/authorities/licenses.yml +0 -13
  184. data/spec/fixtures/charter.docx +0 -0
  185. data/spec/fixtures/config/schema_org.yml +0 -7
  186. data/spec/fixtures/config/schema_org_second.yml +0 -7
  187. data/spec/fixtures/countdown.avi +0 -0
  188. data/spec/fixtures/docx_fits.xml +0 -21
  189. data/spec/fixtures/dublin_core_rdf_descMetadata.nt +0 -13
  190. data/spec/fixtures/hyrax/.gitignore +0 -1
  191. data/spec/fixtures/hyrax/hyrax_test4.pdf +0 -0
  192. data/spec/fixtures/hyrax/hyrax_test5.mp3 +0 -0
  193. data/spec/fixtures/hyrax_generic_stub.txt +0 -1
  194. data/spec/fixtures/icons.zip +0 -0
  195. data/spec/fixtures/image.jp2 +0 -0
  196. data/spec/fixtures/image.jpg +0 -0
  197. data/spec/fixtures/image.png +0 -0
  198. data/spec/fixtures/jp2_fits.xml +0 -36
  199. data/spec/fixtures/jpg_fits.xml +0 -43
  200. data/spec/fixtures/mp3_fits.xml +0 -32
  201. data/spec/fixtures/pdf_fits.xml +0 -43
  202. data/spec/fixtures/piano_note.wav +0 -0
  203. data/spec/fixtures/png_fits.xml +0 -29
  204. data/spec/fixtures/sample_mpeg4.mp4 +0 -0
  205. data/spec/fixtures/small_file.txt +0 -1
  206. data/spec/fixtures/spoken-text.m4a +0 -0
  207. data/spec/fixtures/txt_fits.xml +0 -29
  208. data/spec/fixtures/world.png +0 -0
  209. data/spec/fixtures/xls_fits.xml +0 -18
  210. data/spec/fixtures/xml_fits.xml +0 -37
  211. data/spec/forms/hyrax/forms/admin/appearance_spec.rb +0 -46
  212. data/spec/forms/hyrax/forms/admin/collection_type_form_spec.rb +0 -108
  213. data/spec/forms/hyrax/forms/admin/collection_type_participant_form_spec.rb +0 -10
  214. data/spec/forms/hyrax/forms/admin_set_form_spec.rb +0 -88
  215. data/spec/forms/hyrax/forms/batch_edit_form_spec.rb +0 -111
  216. data/spec/forms/hyrax/forms/batch_upload_form_spec.rb +0 -75
  217. data/spec/forms/hyrax/forms/collection_form_spec.rb +0 -196
  218. data/spec/forms/hyrax/forms/dashboard/nest_collection_form_spec.rb +0 -159
  219. data/spec/forms/hyrax/forms/file_manager_form_spec.rb +0 -19
  220. data/spec/forms/hyrax/forms/file_set_edit_form_spec.rb +0 -53
  221. data/spec/forms/hyrax/forms/permission_template_form_spec.rb +0 -599
  222. data/spec/forms/hyrax/forms/work_form_spec.rb +0 -346
  223. data/spec/forms/hyrax/forms/workflow_action_form_spec.rb +0 -129
  224. data/spec/forms/hyrax/forms/workflow_responsibility_form_spec.rb +0 -41
  225. data/spec/forms/hyrax/generic_work_form_spec.rb +0 -127
  226. data/spec/helpers/blacklight_helper_spec.rb +0 -137
  227. data/spec/helpers/hyrax/ability_helper_spec.rb +0 -61
  228. data/spec/helpers/hyrax/batch_edits_helper_spec.rb +0 -59
  229. data/spec/helpers/hyrax/charts_helper_spec.rb +0 -63
  230. data/spec/helpers/hyrax/citations_behaviors/formatters/chicago_formatter_spec.rb +0 -10
  231. data/spec/helpers/hyrax/collections_helper_spec.rb +0 -117
  232. data/spec/helpers/hyrax/content_block_helper_spec.rb +0 -44
  233. data/spec/helpers/hyrax/dashboard_helper_behavior_spec.rb +0 -74
  234. data/spec/helpers/hyrax/file_set_helper_spec.rb +0 -65
  235. data/spec/helpers/hyrax/iiif_helper_spec.rb +0 -44
  236. data/spec/helpers/hyrax/trophy_helper_spec.rb +0 -37
  237. data/spec/helpers/hyrax_helper_spec.rb +0 -399
  238. data/spec/hyrax/transactions/create_work_spec.rb +0 -155
  239. data/spec/hyrax/transactions/steps/apply_permission_template_spec.rb +0 -72
  240. data/spec/hyrax/transactions/steps/ensure_admin_set_spec.rb +0 -25
  241. data/spec/hyrax/transactions/steps/ensure_permission_template_spec.rb +0 -33
  242. data/spec/hyrax/transactions/steps/save_work_spec.rb +0 -32
  243. data/spec/hyrax/transactions/steps/set_default_admin_set_spec.rb +0 -38
  244. data/spec/hyrax/transactions/steps/set_modified_date_spec.rb +0 -22
  245. data/spec/hyrax/transactions/steps/set_uploaded_date_spec.rb +0 -32
  246. data/spec/indexers/hyrax/collection_indexer_spec.rb +0 -43
  247. data/spec/indexers/hyrax/file_set_indexer_spec.rb +0 -126
  248. data/spec/indexers/hyrax/generic_work_indexer_spec.rb +0 -123
  249. data/spec/indexers/hyrax/repository_reindexer_spec.rb +0 -8
  250. data/spec/inputs/controlled_vocabulary_input_spec.rb +0 -57
  251. data/spec/inputs/multifile_input_spec.rb +0 -31
  252. data/spec/javascripts/authority_select_spec.js +0 -22
  253. data/spec/javascripts/autocomplete_spec.js.coffee +0 -199
  254. data/spec/javascripts/batch_select_spec.js +0 -15
  255. data/spec/javascripts/charts_spec.coffee +0 -10
  256. data/spec/javascripts/checklist_item_spec.js +0 -23
  257. data/spec/javascripts/deposit_agreement_spec.js +0 -70
  258. data/spec/javascripts/file_manager_member_spec.coffee +0 -88
  259. data/spec/javascripts/file_manager_sorting_spec.coffee +0 -23
  260. data/spec/javascripts/fixtures/chart_example.html +0 -1
  261. data/spec/javascripts/fixtures/dashboard_batch_forms.html +0 -11
  262. data/spec/javascripts/fixtures/file_manager_member.html +0 -40
  263. data/spec/javascripts/fixtures/save_button.html +0 -3
  264. data/spec/javascripts/fixtures/sortable.html +0 -182
  265. data/spec/javascripts/fixtures/sul_table.html +0 -29
  266. data/spec/javascripts/grant_spec.js +0 -43
  267. data/spec/javascripts/helpers/jasmine-ajax.js +0 -751
  268. data/spec/javascripts/helpers/jasmine-jquery.js +0 -838
  269. data/spec/javascripts/helpers/test_fixtures.js.coffee +0 -18
  270. data/spec/javascripts/helpers/test_responses.js +0 -12
  271. data/spec/javascripts/jasmine_spec.rb +0 -25
  272. data/spec/javascripts/relationships_control_spec.js.coffee +0 -27
  273. data/spec/javascripts/required_field_spec.js +0 -41
  274. data/spec/javascripts/save_manager_spec.coffee +0 -87
  275. data/spec/javascripts/save_work_spec.js +0 -262
  276. data/spec/javascripts/settings_spec.js +0 -74
  277. data/spec/javascripts/single_use_links_spec.coffee +0 -51
  278. data/spec/javascripts/support/jasmine.yml +0 -125
  279. data/spec/javascripts/support/jasmine_helper.rb +0 -14
  280. data/spec/javascripts/tabs_spec.js.coffee +0 -38
  281. data/spec/javascripts/uploaded_files_spec.js +0 -23
  282. data/spec/javascripts/visibility_component_spec.js +0 -531
  283. data/spec/jobs/attach_files_to_work_job_spec.rb +0 -80
  284. data/spec/jobs/attach_files_to_work_with_ordered_members_job_spec.rb +0 -13
  285. data/spec/jobs/batch_create_job_spec.rb +0 -79
  286. data/spec/jobs/characterize_job_spec.rb +0 -66
  287. data/spec/jobs/content_delete_event_job_spec.rb +0 -36
  288. data/spec/jobs/content_deposit_event_job_spec.rb +0 -25
  289. data/spec/jobs/content_depositor_change_event_job_spec.rb +0 -28
  290. data/spec/jobs/content_new_version_event_job_spec.rb +0 -21
  291. data/spec/jobs/content_restored_version_event_job_spec.rb +0 -28
  292. data/spec/jobs/content_update_event_job_spec.rb +0 -25
  293. data/spec/jobs/create_derivatives_job_spec.rb +0 -93
  294. data/spec/jobs/create_work_job_spec.rb +0 -60
  295. data/spec/jobs/file_set_attached_event_job_spec.rb +0 -34
  296. data/spec/jobs/fixity_check_job_spec.rb +0 -50
  297. data/spec/jobs/hyrax/grant_edit_job_spec.rb +0 -11
  298. data/spec/jobs/hyrax/grant_edit_to_members_job_spec.rb +0 -16
  299. data/spec/jobs/hyrax/grant_read_job_spec.rb +0 -11
  300. data/spec/jobs/hyrax/grant_read_to_members_job_spec.rb +0 -16
  301. data/spec/jobs/hyrax/revoke_edit_from_members_job_spec.rb +0 -16
  302. data/spec/jobs/hyrax/revoke_edit_job_spec.rb +0 -11
  303. data/spec/jobs/import_export_job_spec.rb +0 -28
  304. data/spec/jobs/import_url_job_spec.rb +0 -180
  305. data/spec/jobs/ingest_local_file_job_spec.rb +0 -40
  306. data/spec/jobs/inherit_permissions_job_spec.rb +0 -94
  307. data/spec/jobs/stream_notifications_job_spec.rb +0 -45
  308. data/spec/jobs/user_edit_profile_event_job_spec.rb +0 -17
  309. data/spec/jobs/visibility_copy_job_spec.rb +0 -53
  310. data/spec/lib/hyrax/analytics_spec.rb +0 -65
  311. data/spec/lib/hyrax/arkivo/actor_spec.rb +0 -78
  312. data/spec/lib/hyrax/arkivo/create_subscription_job_spec.rb +0 -50
  313. data/spec/lib/hyrax/arkivo/metadata_munger_spec.rb +0 -46
  314. data/spec/lib/hyrax/arkivo/schema_validator_spec.rb +0 -63
  315. data/spec/lib/hyrax/arkivo_spec.rb +0 -12
  316. data/spec/lib/hyrax/collections/search_service_spec.rb +0 -35
  317. data/spec/lib/hyrax/configuration_spec.rb +0 -91
  318. data/spec/lib/hyrax/controlled_vocabulary/importer/downloader_spec.rb +0 -33
  319. data/spec/lib/hyrax/controlled_vocabulary/importer/language_spec.rb +0 -24
  320. data/spec/lib/hyrax/move_all_works_to_admin_set_spec.rb +0 -13
  321. data/spec/lib/hyrax/name_spec.rb +0 -21
  322. data/spec/lib/hyrax/redis_event_store_spec.rb +0 -54
  323. data/spec/lib/hyrax/resource_sync/capability_list_writer_spec.rb +0 -33
  324. data/spec/lib/hyrax/resource_sync/change_list_writer_spec.rb +0 -78
  325. data/spec/lib/hyrax/resource_sync/resource_list_writer_spec.rb +0 -25
  326. data/spec/lib/hyrax/resource_sync/source_description_writer_spec.rb +0 -18
  327. data/spec/lib/hyrax/role_registry_spec.rb +0 -43
  328. data/spec/lib/hyrax/search_state_spec.rb +0 -26
  329. data/spec/lib/hyrax/zotero/config_spec.rb +0 -26
  330. data/spec/lib/hyrax/zotero_spec.rb +0 -9
  331. data/spec/lib/hyrax_spec.rb +0 -9
  332. data/spec/models/admin_set_spec.rb +0 -229
  333. data/spec/models/batch_upload_item_spec.rb +0 -7
  334. data/spec/models/checksum_audit_log_spec.rb +0 -162
  335. data/spec/models/collection_branding_info_spec.rb +0 -61
  336. data/spec/models/collection_spec.rb +0 -326
  337. data/spec/models/concerns/hyrax/collection_nesting_spec.rb +0 -83
  338. data/spec/models/content_block_spec.rb +0 -198
  339. data/spec/models/featured_work_list_spec.rb +0 -56
  340. data/spec/models/featured_work_spec.rb +0 -53
  341. data/spec/models/file_download_stat_spec.rb +0 -104
  342. data/spec/models/file_set_spec.rb +0 -668
  343. data/spec/models/file_view_stat_spec.rb +0 -81
  344. data/spec/models/flipflop_spec.rb +0 -49
  345. data/spec/models/generic_work_spec.rb +0 -117
  346. data/spec/models/hyrax/batch_create_operation_spec.rb +0 -59
  347. data/spec/models/hyrax/collection_type_participant_spec.rb +0 -43
  348. data/spec/models/hyrax/collection_type_spec.rb +0 -236
  349. data/spec/models/hyrax/download_spec.rb +0 -13
  350. data/spec/models/hyrax/operation_spec.rb +0 -123
  351. data/spec/models/hyrax/pageview_spec.rb +0 -13
  352. data/spec/models/hyrax/permission_template_access_spec.rb +0 -180
  353. data/spec/models/hyrax/permission_template_spec.rb +0 -291
  354. data/spec/models/hyrax/permissions/readable_permissions_spec.rb +0 -52
  355. data/spec/models/hyrax/permissions/writable_permissions_spec.rb +0 -12
  356. data/spec/models/hyrax/uploaded_file_spec.rb +0 -10
  357. data/spec/models/hyrax/user_usage_stats_spec.rb +0 -43
  358. data/spec/models/hyrax/work_behavior_spec.rb +0 -64
  359. data/spec/models/job_io_wrapper_spec.rb +0 -172
  360. data/spec/models/proxy_deposit_request_spec.rb +0 -152
  361. data/spec/models/single_use_link_spec.rb +0 -37
  362. data/spec/models/sipity/agent_spec.rb +0 -8
  363. data/spec/models/sipity/comment_spec.rb +0 -24
  364. data/spec/models/sipity/entity_spec.rb +0 -27
  365. data/spec/models/sipity/entity_specific_responsibility_spec.rb +0 -9
  366. data/spec/models/sipity/notifiable_context_spec.rb +0 -7
  367. data/spec/models/sipity/notification_recipient_spec.rb +0 -9
  368. data/spec/models/sipity/notification_spec.rb +0 -15
  369. data/spec/models/sipity/role_spec.rb +0 -40
  370. data/spec/models/sipity/workflow_action_spec.rb +0 -11
  371. data/spec/models/sipity/workflow_responsibility_spec.rb +0 -8
  372. data/spec/models/sipity/workflow_role_spec.rb +0 -8
  373. data/spec/models/sipity/workflow_spec.rb +0 -84
  374. data/spec/models/sipity/workflow_state_action_permission_spec.rb +0 -8
  375. data/spec/models/sipity/workflow_state_action_spec.rb +0 -8
  376. data/spec/models/sipity/workflow_state_spec.rb +0 -17
  377. data/spec/models/solr_document_spec.rb +0 -205
  378. data/spec/models/trophy_spec.rb +0 -19
  379. data/spec/models/user_mailbox_spec.rb +0 -134
  380. data/spec/models/user_spec.rb +0 -269
  381. data/spec/models/work_view_stat_spec.rb +0 -107
  382. data/spec/presenters/hyrax/admin/dashboard_presenter_spec.rb +0 -33
  383. data/spec/presenters/hyrax/admin/repository_growth_presenter_spec.rb +0 -25
  384. data/spec/presenters/hyrax/admin/repository_object_presenter_spec.rb +0 -24
  385. data/spec/presenters/hyrax/admin/user_activity_presenter_spec.rb +0 -20
  386. data/spec/presenters/hyrax/admin/users_presenter_spec.rb +0 -48
  387. data/spec/presenters/hyrax/admin/workflow_role_presenter_spec.rb +0 -12
  388. data/spec/presenters/hyrax/admin/workflow_roles_presenter_spec.rb +0 -16
  389. data/spec/presenters/hyrax/admin_set_options_presenter_spec.rb +0 -73
  390. data/spec/presenters/hyrax/admin_set_presenter_spec.rb +0 -143
  391. data/spec/presenters/hyrax/admin_stats_presenter_spec.rb +0 -143
  392. data/spec/presenters/hyrax/collection_options_presenter_spec.rb +0 -15
  393. data/spec/presenters/hyrax/collection_presenter_spec.rb +0 -461
  394. data/spec/presenters/hyrax/dashboard/user_presenter_spec.rb +0 -65
  395. data/spec/presenters/hyrax/embargo_presenter_spec.rb +0 -51
  396. data/spec/presenters/hyrax/file_set_presenter_spec.rb +0 -426
  397. data/spec/presenters/hyrax/file_usage_spec.rb +0 -162
  398. data/spec/presenters/hyrax/fixity_status_presenter_spec.rb +0 -55
  399. data/spec/presenters/hyrax/homepage_presenter_spec.rb +0 -42
  400. data/spec/presenters/hyrax/inspect_work_presenter_spec.rb +0 -59
  401. data/spec/presenters/hyrax/lease_presenter_spec.rb +0 -51
  402. data/spec/presenters/hyrax/member_presenter_factory_spec.rb +0 -26
  403. data/spec/presenters/hyrax/menu_presenter_spec.rb +0 -107
  404. data/spec/presenters/hyrax/permission_badge_spec.rb +0 -77
  405. data/spec/presenters/hyrax/presenter_factory_spec.rb +0 -53
  406. data/spec/presenters/hyrax/presenter_renderer_spec.rb +0 -30
  407. data/spec/presenters/hyrax/select_collection_type_list_presenter_spec.rb +0 -59
  408. data/spec/presenters/hyrax/select_collection_type_presenter_spec.rb +0 -10
  409. data/spec/presenters/hyrax/select_type_list_presenter_spec.rb +0 -37
  410. data/spec/presenters/hyrax/select_type_presenter_spec.rb +0 -74
  411. data/spec/presenters/hyrax/single_use_link_presenter_spec.rb +0 -41
  412. data/spec/presenters/hyrax/transfers_presenter_spec.rb +0 -44
  413. data/spec/presenters/hyrax/trophy_presenter_spec.rb +0 -53
  414. data/spec/presenters/hyrax/twitter_presenter_spec.rb +0 -27
  415. data/spec/presenters/hyrax/user_profile_presenter_spec.rb +0 -28
  416. data/spec/presenters/hyrax/version_list_presenter_spec.rb +0 -30
  417. data/spec/presenters/hyrax/version_presenter_spec.rb +0 -57
  418. data/spec/presenters/hyrax/work_show_presenter_spec.rb +0 -580
  419. data/spec/presenters/hyrax/work_usage_spec.rb +0 -144
  420. data/spec/presenters/hyrax/workflow_presenter_spec.rb +0 -75
  421. data/spec/rails_helper.rb +0 -2
  422. data/spec/renderers/hyrax/renderers/attribute_renderer_spec.rb +0 -118
  423. data/spec/renderers/hyrax/renderers/date_attribute_renderer_spec.rb +0 -39
  424. data/spec/renderers/hyrax/renderers/external_link_attribute_renderer_spec.rb +0 -22
  425. data/spec/renderers/hyrax/renderers/faceted_attribute_renderer_spec.rb +0 -35
  426. data/spec/renderers/hyrax/renderers/license_attribute_renderer_spec.rb +0 -21
  427. data/spec/renderers/hyrax/renderers/linked_attribute_renderer_spec.rb +0 -21
  428. data/spec/renderers/hyrax/renderers/rights_statement_attribute_renderer_spec.rb +0 -29
  429. data/spec/requests/legacy_routing_spec.rb +0 -7
  430. data/spec/requests/riiif_spec.rb +0 -32
  431. data/spec/routing/admin_routes_spec.rb +0 -29
  432. data/spec/routing/api_route_spec.rb +0 -89
  433. data/spec/routing/citations_route_spec.rb +0 -21
  434. data/spec/routing/collection_permission_templates_routes_spec.rb +0 -31
  435. data/spec/routing/collection_types_routes.rb +0 -35
  436. data/spec/routing/dashboard_routes_spec.rb +0 -37
  437. data/spec/routing/featured_works_route_spec.rb +0 -15
  438. data/spec/routing/operations_spec.rb +0 -9
  439. data/spec/routing/ownership_transfers_route_spec.rb +0 -43
  440. data/spec/routing/resource_sync_spec.rb +0 -19
  441. data/spec/routing/route_spec.rb +0 -205
  442. data/spec/routing/single_use_link_spec.rb +0 -27
  443. data/spec/routing/stats_route_spec.rb +0 -21
  444. data/spec/search_builders/hyrax/abstract_type_relation_spec.rb +0 -18
  445. data/spec/search_builders/hyrax/admin_admin_set_member_search_builder_spec.rb +0 -39
  446. data/spec/search_builders/hyrax/admin_set_search_builder_spec.rb +0 -78
  447. data/spec/search_builders/hyrax/catalog_search_builder_spec.rb +0 -86
  448. data/spec/search_builders/hyrax/collection_member_search_builder_spec.rb +0 -53
  449. data/spec/search_builders/hyrax/collection_search_builder_spec.rb +0 -74
  450. data/spec/search_builders/hyrax/dashboard/collections_search_builder_spec.rb +0 -103
  451. data/spec/search_builders/hyrax/dashboard/nested_collections_search_builder_spec.rb +0 -85
  452. data/spec/search_builders/hyrax/dashboard/works_search_builder_spec.rb +0 -44
  453. data/spec/search_builders/hyrax/embargo_search_builder_spec.rb +0 -17
  454. data/spec/search_builders/hyrax/file_set_search_builder_spec.rb +0 -28
  455. data/spec/search_builders/hyrax/lease_search_builder_spec.rb +0 -17
  456. data/spec/search_builders/hyrax/my/collections_search_builder_spec.rb +0 -35
  457. data/spec/search_builders/hyrax/my/find_works_search_builder_spec.rb +0 -63
  458. data/spec/search_builders/hyrax/my/shares_search_builder_spec.rb +0 -32
  459. data/spec/search_builders/hyrax/my/works_search_builder_spec.rb +0 -52
  460. data/spec/search_builders/hyrax/parent_collection_search_builder_spec.rb +0 -15
  461. data/spec/search_builders/hyrax/single_admin_set_search_builder_spec.rb +0 -20
  462. data/spec/search_builders/hyrax/stats/work_status_search_builder_spec.rb +0 -32
  463. data/spec/search_builders/hyrax/work_relation_spec.rb +0 -9
  464. data/spec/search_builders/hyrax/work_search_builder_spec.rb +0 -106
  465. data/spec/search_builders/hyrax/works_search_builder_spec.rb +0 -23
  466. data/spec/services/hyrax/abstract_message_service_spec.rb +0 -25
  467. data/spec/services/hyrax/adapters/nesting_index_adapter_spec.rb +0 -205
  468. data/spec/services/hyrax/admin_set_create_service_spec.rb +0 -114
  469. data/spec/services/hyrax/admin_set_member_service_spec.rb +0 -21
  470. data/spec/services/hyrax/admin_set_service_spec.rb +0 -171
  471. data/spec/services/hyrax/batch_create_failure_service_spec.rb +0 -18
  472. data/spec/services/hyrax/batch_create_success_service_spec.rb +0 -14
  473. data/spec/services/hyrax/change_content_depositor_service_spec.rb +0 -49
  474. data/spec/services/hyrax/collection_member_service_spec.rb +0 -19
  475. data/spec/services/hyrax/collection_size_service_spec.rb +0 -74
  476. data/spec/services/hyrax/collection_types/create_service_spec.rb +0 -127
  477. data/spec/services/hyrax/collection_types/permissions_service_spec.rb +0 -297
  478. data/spec/services/hyrax/collections/collection_member_service_spec.rb +0 -49
  479. data/spec/services/hyrax/collections/managed_collections_service_spec.rb +0 -17
  480. data/spec/services/hyrax/collections/migration_service_spec.rb +0 -467
  481. data/spec/services/hyrax/collections/nested_collection_persistence_service_spec.rb +0 -28
  482. data/spec/services/hyrax/collections/nested_collection_query_service_spec.rb +0 -353
  483. data/spec/services/hyrax/collections/permissions_create_service_spec.rb +0 -64
  484. data/spec/services/hyrax/collections/permissions_service_spec.rb +0 -380
  485. data/spec/services/hyrax/collections_service_spec.rb +0 -62
  486. data/spec/services/hyrax/curation_concern_spec.rb +0 -18
  487. data/spec/services/hyrax/database_migrator_spec.rb +0 -20
  488. data/spec/services/hyrax/default_middleware_stack_spec.rb +0 -36
  489. data/spec/services/hyrax/derivative_path_spec.rb +0 -65
  490. data/spec/services/hyrax/derivative_service_spec.rb +0 -49
  491. data/spec/services/hyrax/embargo_service_spec.rb +0 -59
  492. data/spec/services/hyrax/file_set_csv_service_spec.rb +0 -83
  493. data/spec/services/hyrax/file_set_derivatives_service_spec.rb +0 -13
  494. data/spec/services/hyrax/file_set_fixity_check_service_spec.rb +0 -129
  495. data/spec/services/hyrax/fixity_check_failure_service_spec.rb +0 -29
  496. data/spec/services/hyrax/graph_exporter_spec.rb +0 -58
  497. data/spec/services/hyrax/iiif_authorization_service_spec.rb +0 -43
  498. data/spec/services/hyrax/import_url_failure_service_spec.rb +0 -23
  499. data/spec/services/hyrax/lease_service_spec.rb +0 -50
  500. data/spec/services/hyrax/license_service_spec.rb +0 -34
  501. data/spec/services/hyrax/lock_manager_spec.rb +0 -13
  502. data/spec/services/hyrax/messenger_service_spec.rb +0 -15
  503. data/spec/services/hyrax/microdata_spec.rb +0 -94
  504. data/spec/services/hyrax/multiple_membership_checker_spec.rb +0 -155
  505. data/spec/services/hyrax/noid_spec.rb +0 -37
  506. data/spec/services/hyrax/permission_template_applicator_spec.rb +0 -69
  507. data/spec/services/hyrax/persist_derivatives_spec.rb +0 -22
  508. data/spec/services/hyrax/persist_directly_contained_output_file_service_spec.rb +0 -20
  509. data/spec/services/hyrax/qa_select_service_spec.rb +0 -109
  510. data/spec/services/hyrax/quick_classification_query_spec.rb +0 -38
  511. data/spec/services/hyrax/repository_fixity_check_service_spec.rb +0 -16
  512. data/spec/services/hyrax/resource_types_service_spec.rb +0 -38
  513. data/spec/services/hyrax/rights_statement_service_spec.rb +0 -9
  514. data/spec/services/hyrax/statistics/collections/over_time_spec.rb +0 -17
  515. data/spec/services/hyrax/statistics/depositors/summary_spec.rb +0 -66
  516. data/spec/services/hyrax/statistics/file_sets/by_format_spec.rb +0 -29
  517. data/spec/services/hyrax/statistics/query_service_spec.rb +0 -112
  518. data/spec/services/hyrax/statistics/system_stats_spec.rb +0 -45
  519. data/spec/services/hyrax/statistics/users/over_time_spec.rb +0 -22
  520. data/spec/services/hyrax/statistics/works/by_depositor_spec.rb +0 -24
  521. data/spec/services/hyrax/statistics/works/by_resource_type_spec.rb +0 -28
  522. data/spec/services/hyrax/statistics/works/count_spec.rb +0 -33
  523. data/spec/services/hyrax/statistics/works/over_time_spec.rb +0 -17
  524. data/spec/services/hyrax/thumbnail_path_service_spec.rb +0 -55
  525. data/spec/services/hyrax/tolerant_select_service_spec.rb +0 -80
  526. data/spec/services/hyrax/user_stat_importer_spec.rb +0 -315
  527. data/spec/services/hyrax/versioning_service_spec.rb +0 -26
  528. data/spec/services/hyrax/work_query_service_spec.rb +0 -56
  529. data/spec/services/hyrax/workflow/action_taken_service_spec.rb +0 -74
  530. data/spec/services/hyrax/workflow/activate_object_spec.rb +0 -26
  531. data/spec/services/hyrax/workflow/changes_required_notification_spec.rb +0 -35
  532. data/spec/services/hyrax/workflow/deactivate_object_spec.rb +0 -26
  533. data/spec/services/hyrax/workflow/deposited_notification_spec.rb +0 -35
  534. data/spec/services/hyrax/workflow/grant_edit_to_depositor_spec.rb +0 -53
  535. data/spec/services/hyrax/workflow/grant_read_to_depositor_spec.rb +0 -48
  536. data/spec/services/hyrax/workflow/method_generator_spec.rb +0 -42
  537. data/spec/services/hyrax/workflow/notification_configuration_parameter_spec.rb +0 -24
  538. data/spec/services/hyrax/workflow/notification_generator_spec.rb +0 -27
  539. data/spec/services/hyrax/workflow/notification_service_spec.rb +0 -87
  540. data/spec/services/hyrax/workflow/pending_review_notification_spec.rb +0 -34
  541. data/spec/services/hyrax/workflow/permission_generator_spec.rb +0 -50
  542. data/spec/services/hyrax/workflow/permission_query_spec.rb +0 -206
  543. data/spec/services/hyrax/workflow/revoke_edit_from_depositor_spec.rb +0 -48
  544. data/spec/services/hyrax/workflow/sipity_actions_generator_spec.rb +0 -40
  545. data/spec/services/hyrax/workflow/state_machine_generator_spec.rb +0 -45
  546. data/spec/services/hyrax/workflow/status_list_service_spec.rb +0 -67
  547. data/spec/services/hyrax/workflow/workflow_factory_spec.rb +0 -26
  548. data/spec/services/hyrax/workflow/workflow_importer_spec.rb +0 -241
  549. data/spec/services/hyrax/workflow/workflow_permissions_generator_spec.rb +0 -39
  550. data/spec/services/hyrax/workflow/workflow_schema_spec.rb +0 -86
  551. data/spec/services/hyrax/working_directory_spec.rb +0 -12
  552. data/spec/services/hyrax/works/managed_works_service_spec.rb +0 -17
  553. data/spec/spec_helper.rb +0 -300
  554. data/spec/strategies/hyrax/strategies/yaml_strategy_spec.rb +0 -30
  555. data/spec/support/controller_level_helpers.rb +0 -27
  556. data/spec/support/factory_helpers.rb +0 -24
  557. data/spec/support/fakes/fake_authority.rb +0 -13
  558. data/spec/support/features.rb +0 -10
  559. data/spec/support/features/batch_edit_actions.rb +0 -28
  560. data/spec/support/features/session_helpers.rb +0 -14
  561. data/spec/support/features/workflow.rb +0 -9
  562. data/spec/support/input_support.rb +0 -11
  563. data/spec/support/logging_formatter.rb +0 -66
  564. data/spec/support/matchers/api_responses.rb +0 -26
  565. data/spec/support/matchers/collection_type_property_matchers.rb +0 -29
  566. data/spec/support/matchers/response_matchers.rb +0 -7
  567. data/spec/support/optional_example.rb +0 -16
  568. data/spec/support/rake.rb +0 -41
  569. data/spec/support/selectors.rb +0 -100
  570. data/spec/support/spec_statistic.rb +0 -23
  571. data/spec/support/speedup.rb +0 -6
  572. data/spec/support/statistic_helper.rb +0 -9
  573. data/spec/tasks/rake_spec.rb +0 -27
  574. data/spec/test_app_templates/Gemfile.extra +0 -6
  575. data/spec/test_app_templates/disable_animations_in_test_environment.rb +0 -54
  576. data/spec/test_app_templates/lib/generators/test_app_generator.rb +0 -125
  577. data/spec/views/_flash_msg.html.erb_spec.rb +0 -32
  578. data/spec/views/_user_util_links.html.erb_spec.rb +0 -44
  579. data/spec/views/catalog/_index_list_default.html.erb_spec.rb +0 -43
  580. data/spec/views/catalog/_search_form.html.erb_spec.rb +0 -16
  581. data/spec/views/catalog/_thumbnail_list_collection.html.erb_spec.rb +0 -43
  582. data/spec/views/catalog/index.html.erb_spec.rb +0 -50
  583. data/spec/views/content_blocks/edit.html.erb_spec.rb +0 -21
  584. data/spec/views/hyrax/admin/admin_sets/_form.html.erb_spec.rb +0 -29
  585. data/spec/views/hyrax/admin/admin_sets/_form_participant_table.html.erb_spec.rb +0 -128
  586. data/spec/views/hyrax/admin/admin_sets/_form_participants.html.erb_spec.rb +0 -19
  587. data/spec/views/hyrax/admin/admin_sets/_form_visibility.html.erb_spec.rb +0 -24
  588. data/spec/views/hyrax/admin/admin_sets/_form_workflow.html.erb_spec.rb +0 -22
  589. data/spec/views/hyrax/admin/admin_sets/_show_actions.html.erb_spec.rb +0 -68
  590. data/spec/views/hyrax/admin/admin_sets/_show_document_list.html.erb_spec.rb +0 -13
  591. data/spec/views/hyrax/admin/admin_sets/_show_document_list_row.html.erb_spec.rb +0 -28
  592. data/spec/views/hyrax/admin/admin_sets/index.html.erb_spec.rb +0 -40
  593. data/spec/views/hyrax/admin/admin_sets/index.json.erb_spec.rb +0 -29
  594. data/spec/views/hyrax/admin/admin_sets/show.html.erb_spec.rb +0 -21
  595. data/spec/views/hyrax/admin/collection_types/_form.html.erb_spec.rb +0 -45
  596. data/spec/views/hyrax/admin/collection_types/_form_appearance.html.erb_spec.rb +0 -22
  597. data/spec/views/hyrax/admin/collection_types/_form_metadata.html.erb_spec.rb +0 -27
  598. data/spec/views/hyrax/admin/collection_types/_form_metadata_admin_set.html.erb_spec.rb +0 -27
  599. data/spec/views/hyrax/admin/collection_types/_form_participants.html.erb_spec.rb +0 -24
  600. data/spec/views/hyrax/admin/collection_types/_form_participants_table.html.erb_spec.rb +0 -73
  601. data/spec/views/hyrax/admin/collection_types/_form_settings.html.erb_spec.rb +0 -86
  602. data/spec/views/hyrax/admin/collection_types/index.html.erb_spec.rb +0 -62
  603. data/spec/views/hyrax/admin/features/index.html.erb_spec.rb +0 -15
  604. data/spec/views/hyrax/admin/stats/show.html.erb_spec.rb +0 -54
  605. data/spec/views/hyrax/admin/users/index.html.erb_spec.rb +0 -45
  606. data/spec/views/hyrax/admin/workflow_roles/index.html.erb_spec.rb +0 -40
  607. data/spec/views/hyrax/base/_attribute_rows.html.erb_spec.rb +0 -30
  608. data/spec/views/hyrax/base/_attributes.html.erb_spec.rb +0 -35
  609. data/spec/views/hyrax/base/_citations.html.erb_spec.rb +0 -43
  610. data/spec/views/hyrax/base/_form.html.erb_spec.rb +0 -80
  611. data/spec/views/hyrax/base/_form_child_work_relationships.html.erb_spec.rb +0 -68
  612. data/spec/views/hyrax/base/_form_files.html.erb_spec.rb +0 -38
  613. data/spec/views/hyrax/base/_form_metadata.html.erb_spec.rb +0 -40
  614. data/spec/views/hyrax/base/_form_progress.html.erb_spec.rb +0 -131
  615. data/spec/views/hyrax/base/_form_relationships.html.erb_spec.rb +0 -48
  616. data/spec/views/hyrax/base/_form_rendering.html.erb_spec.rb +0 -22
  617. data/spec/views/hyrax/base/_items.html.erb_spec.rb +0 -55
  618. data/spec/views/hyrax/base/_member.html.erb_spec.rb +0 -43
  619. data/spec/views/hyrax/base/_relationships.html.erb_spec.rb +0 -92
  620. data/spec/views/hyrax/base/_show_actions.html.erb_spec.rb +0 -149
  621. data/spec/views/hyrax/base/_social_media.html.erb_spec.rb +0 -16
  622. data/spec/views/hyrax/base/edit.html.erb_spec.rb +0 -26
  623. data/spec/views/hyrax/base/file_manager.html.erb_spec.rb +0 -88
  624. data/spec/views/hyrax/base/show.html.erb_spec.rb +0 -201
  625. data/spec/views/hyrax/base/show.json.jbuilder_spec.rb +0 -23
  626. data/spec/views/hyrax/base/unauthorized.html.erb_spec.rb +0 -30
  627. data/spec/views/hyrax/base/unavailable.html.erb_spec.rb +0 -36
  628. data/spec/views/hyrax/batch_edits/check_all_spec.rb +0 -13
  629. data/spec/views/hyrax/batch_edits/edit.html.erb_spec.rb +0 -35
  630. data/spec/views/hyrax/batch_uploads/_form.html.erb_spec.rb +0 -24
  631. data/spec/views/hyrax/citations/work.html.erb_spec.rb +0 -175
  632. data/spec/views/hyrax/collections/_show_descriptions.html.erb_spec.rb +0 -32
  633. data/spec/views/hyrax/collections/_show_document_list.html.erb_spec.rb +0 -24
  634. data/spec/views/hyrax/collections/_show_document_list_row.html.erb_spec.rb +0 -35
  635. data/spec/views/hyrax/collections/_show_parent_collections.html.erb_spec.rb +0 -74
  636. data/spec/views/hyrax/collections/_sort_and_per_page.html.erb_spec.rb +0 -60
  637. data/spec/views/hyrax/collections/_subcollection_list.html.erb_spec.rb +0 -39
  638. data/spec/views/hyrax/collections/show.html.erb_spec.rb +0 -48
  639. data/spec/views/hyrax/dashboard/_sidebar.html.erb_spec.rb +0 -132
  640. data/spec/views/hyrax/dashboard/collections/_default_group.html.erb_spec.rb +0 -43
  641. data/spec/views/hyrax/dashboard/collections/_form.html.erb_spec.rb +0 -60
  642. data/spec/views/hyrax/dashboard/collections/_form_branding.html.erb_spec.rb +0 -23
  643. data/spec/views/hyrax/dashboard/collections/_form_discovery.erb_spec.rb +0 -67
  644. data/spec/views/hyrax/dashboard/collections/_form_for_select_collection.html.erb_spec.rb +0 -47
  645. data/spec/views/hyrax/dashboard/collections/_form_share.erb_spec.rb +0 -22
  646. data/spec/views/hyrax/dashboard/collections/_form_share_table.html.erb_spec.rb +0 -108
  647. data/spec/views/hyrax/dashboard/collections/_list_collections.html.erb_spec.rb +0 -51
  648. data/spec/views/hyrax/dashboard/collections/_show_actions.html.erb_spec.rb +0 -77
  649. data/spec/views/hyrax/dashboard/collections/_show_add_items_actions.html.erb_spec.rb +0 -46
  650. data/spec/views/hyrax/dashboard/collections/_show_descriptions.html.erb_spec.rb +0 -32
  651. data/spec/views/hyrax/dashboard/collections/_show_document_list.html.erb_spec.rb +0 -24
  652. data/spec/views/hyrax/dashboard/collections/_show_document_list_menu.html.erb_spec.rb +0 -31
  653. data/spec/views/hyrax/dashboard/collections/_show_document_list_row.html.erb_spec.rb +0 -35
  654. data/spec/views/hyrax/dashboard/collections/_show_parent_collection_row.html.erb_spec.rb +0 -61
  655. data/spec/views/hyrax/dashboard/collections/_show_parent_collections.html.erb_spec.rb +0 -82
  656. data/spec/views/hyrax/dashboard/collections/_show_subcollection_actions.html.erb_spec.rb +0 -62
  657. data/spec/views/hyrax/dashboard/collections/_sort_and_per_page.html.erb_spec.rb +0 -60
  658. data/spec/views/hyrax/dashboard/collections/_subcollection_list.html.erb_spec.rb +0 -75
  659. data/spec/views/hyrax/dashboard/collections/_work_action_menu.html.erb_spec.rb +0 -18
  660. data/spec/views/hyrax/dashboard/collections/edit.html.erb_spec.rb +0 -20
  661. data/spec/views/hyrax/dashboard/collections/show.html.erb_spec.rb +0 -116
  662. data/spec/views/hyrax/dashboard/profiles/_trophy_edit.html.erb_spec.rb +0 -36
  663. data/spec/views/hyrax/dashboard/profiles/edit.html.erb_spec.rb +0 -67
  664. data/spec/views/hyrax/dashboard/profiles/show.html.erb_spec.rb +0 -36
  665. data/spec/views/hyrax/dashboard/show_user_spec.rb +0 -61
  666. data/spec/views/hyrax/depositors/index.html.erb_spec.rb +0 -13
  667. data/spec/views/hyrax/embargoes/index.html.erb_spec.rb +0 -14
  668. data/spec/views/hyrax/file_sets/_actions.html.erb_spec.rb +0 -36
  669. data/spec/views/hyrax/file_sets/_permission.html.erb_spec.rb +0 -14
  670. data/spec/views/hyrax/file_sets/_permission_form.html.erb_spec.rb +0 -44
  671. data/spec/views/hyrax/file_sets/_show_actions.html.erb_spec.rb +0 -62
  672. data/spec/views/hyrax/file_sets/_show_characterization_details.html.erb_spec.rb +0 -29
  673. data/spec/views/hyrax/file_sets/_single_use_links.html.erb_spec.rb +0 -34
  674. data/spec/views/hyrax/file_sets/_versioning.html.erb_spec.rb +0 -16
  675. data/spec/views/hyrax/file_sets/media_display/_audio.html.erb_spec.rb +0 -29
  676. data/spec/views/hyrax/file_sets/media_display/_default.html.erb_spec.rb +0 -29
  677. data/spec/views/hyrax/file_sets/media_display/_video.html.erb_spec.rb +0 -29
  678. data/spec/views/hyrax/file_sets/show.html.erb_spec.rb +0 -47
  679. data/spec/views/hyrax/file_sets/show.json.jbuilder_spec.rb +0 -27
  680. data/spec/views/hyrax/homepage/_announcement.html.erb_spec.rb +0 -27
  681. data/spec/views/hyrax/homepage/_featured_works.html.erb_spec.rb +0 -40
  682. data/spec/views/hyrax/homepage/_sortable_featured.html.erb_spec.rb +0 -23
  683. data/spec/views/hyrax/homepage/index.html.erb_spec.rb +0 -129
  684. data/spec/views/hyrax/leases/index.html.erb_spec.rb +0 -14
  685. data/spec/views/hyrax/my/_collection_action_menu.html.erb_spec.rb +0 -65
  686. data/spec/views/hyrax/my/_search_header.html.erb_spec.rb +0 -34
  687. data/spec/views/hyrax/my/_work_action_menu.html.erb_spec.rb +0 -40
  688. data/spec/views/hyrax/my/collections/_list_collections.html.erb_spec.rb +0 -109
  689. data/spec/views/hyrax/my/collections/index.html.erb_spec.rb +0 -34
  690. data/spec/views/hyrax/my/facet.html.erb_spec.rb +0 -34
  691. data/spec/views/hyrax/my/works/_list_works.html.erb_spec.rb +0 -30
  692. data/spec/views/hyrax/my/works/index.html.erb_spec.rb +0 -69
  693. data/spec/views/hyrax/permissions/confirm.html.erb_spec.rb +0 -15
  694. data/spec/views/hyrax/single_use_links_viewer/show.html.erb_spec.rb +0 -17
  695. data/spec/views/hyrax/single_use_links_viewer/single_use_error.html.erb_spec.rb +0 -6
  696. data/spec/views/hyrax/stats/file.html.erb_spec.rb +0 -48
  697. data/spec/views/hyrax/uploads/create.json.jbuilder_spec.rb +0 -17
  698. data/spec/views/hyrax/users/_user_info.html.erb_spec.rb +0 -25
  699. data/spec/views/hyrax/users/index.html.erb_spec.rb +0 -25
  700. data/spec/views/hyrax/users/show.html.erb_spec.rb +0 -55
  701. data/spec/views/layouts/error.html.erb_spec.rb +0 -6
  702. data/spec/views/pages/edit.html.erb_spec.rb +0 -27
  703. data/spec/views/pages/show.html.erb_spec.rb +0 -17
  704. data/spec/views/records/edit_fields/_based_near.html.erb_spec.rb +0 -20
  705. data/spec/views/records/edit_fields/_description.html.erb_spec.rb +0 -67
  706. data/spec/views/records/edit_fields/_language.html.erb_spec.rb +0 -20
  707. data/spec/views/records/edit_fields/_subject.html.erb_spec.rb +0 -20
  708. data/spec/views/shared/select_work_type_modal.html.erb_spec.rb +0 -51
@@ -1 +0,0 @@
1
- internal
@@ -1,183 +0,0 @@
1
- require 'cancan/matchers'
2
-
3
- RSpec.describe 'Hyrax::Ability', type: :model do
4
- let(:ability) { Ability.new(user) }
5
-
6
- subject { ability }
7
-
8
- describe '.admin_group_name' do
9
- let(:user) { create(:user) }
10
-
11
- it 'returns the admin group name' do
12
- expect(subject.admin_group_name).to eq 'admin'
13
- end
14
- end
15
-
16
- describe "#registered_user?" do
17
- subject { ability.send :registered_user? }
18
-
19
- context "with a guest user" do
20
- let(:user) { create(:user, :guest) }
21
-
22
- it { is_expected.to be false }
23
- end
24
- end
25
-
26
- describe "#can_create_any_work?" do
27
- subject { ability.can_create_any_work? }
28
-
29
- let(:user) { create(:user) }
30
-
31
- context "when user doesn't have deposit into any admin set" do
32
- it { is_expected.to be false }
33
- end
34
-
35
- context "when user can deposit into an admin set" do
36
- let(:permission_template) { create(:permission_template, with_admin_set: true) }
37
-
38
- before do
39
- # Grant the user access to deposit into an admin set.
40
- create(:permission_template_access,
41
- :deposit,
42
- permission_template: permission_template,
43
- agent_type: 'user',
44
- agent_id: user.user_key)
45
- end
46
- it { is_expected.to be true }
47
- end
48
- end
49
-
50
- describe "can?(:review, :submissions)" do
51
- subject { ability.can?(:review, :submissions) }
52
-
53
- let(:role) { Sipity::Role.create(name: role_name) }
54
- let(:user) { create(:user) }
55
- let(:permission_template) { create(:permission_template, with_active_workflow: true) }
56
- let(:workflow) { permission_template.active_workflow }
57
-
58
- before do
59
- workflow.workflow_roles.create(role: role)
60
- # We are testing that this workflow role is removed
61
- Hyrax::Workflow::PermissionGenerator.call(roles: role,
62
- workflow: workflow,
63
- agents: user)
64
- end
65
-
66
- context "as an administrator" do
67
- # Assign a role that should not grant review ability
68
- let(:role_name) { 'depositing' }
69
-
70
- before do
71
- Sipity::Role.create(name: 'approving')
72
- # Admin-ify the user
73
- allow(user).to receive_messages(groups: ['admin', 'registered'])
74
- end
75
-
76
- it { is_expected.to be true }
77
- end
78
-
79
- context "as a depositor" do
80
- let(:role_name) { 'depositing' }
81
-
82
- before do
83
- Sipity::Role.create(name: 'approving')
84
- end
85
-
86
- it { is_expected.to be false }
87
- end
88
-
89
- context "as an approver" do
90
- let(:role_name) { 'approving' }
91
-
92
- it { is_expected.to be true }
93
- end
94
- end
95
-
96
- describe "a user with no roles" do
97
- let(:user) { nil }
98
-
99
- it { is_expected.not_to be_able_to(:update, ContentBlock) }
100
- it { is_expected.not_to be_able_to(:create, AdminSet) }
101
- it { is_expected.to be_able_to(:read, ContentBlock) }
102
- it { is_expected.to be_able_to(:read, GenericWork) }
103
- it { is_expected.to be_able_to(:stats, GenericWork) }
104
- it { is_expected.to be_able_to(:citation, GenericWork) }
105
- end
106
-
107
- describe "a registered user" do
108
- let(:user) { create(:user) }
109
-
110
- it { is_expected.not_to be_able_to(:update, ContentBlock) }
111
- it { is_expected.to be_able_to(:read, ContentBlock) }
112
- it { is_expected.not_to be_able_to(:read, Hyrax::Statistics) }
113
- it { is_expected.not_to be_able_to(:read, :admin_dashboard) }
114
- it { is_expected.not_to be_able_to(:create, AdminSet) }
115
- it { is_expected.not_to be_able_to(:update, :appearance) }
116
- end
117
-
118
- describe "a user in the admin group" do
119
- let(:user) { create(:user) }
120
-
121
- before { allow(user).to receive_messages(groups: ['admin', 'registered']) }
122
- it { is_expected.to be_able_to(:update, ContentBlock) }
123
- it { is_expected.to be_able_to(:read, ContentBlock) }
124
- it { is_expected.to be_able_to(:read, Hyrax::Statistics) }
125
- it { is_expected.to be_able_to(:download, 'abcd123') } # an id for a work/FileSet
126
- it { is_expected.to be_able_to(:edit, 'abcd123') } # an id for a work/FileSet
127
- it { is_expected.to be_able_to(:destroy, 'abcd123') } # an id for a work/FileSet
128
- it { is_expected.to be_able_to(:read, :admin_dashboard) }
129
- it { is_expected.to be_able_to(:manage, AdminSet) }
130
- it { is_expected.to be_able_to(:create, AdminSet) }
131
- it { is_expected.to be_able_to(:update, :appearance) }
132
- end
133
-
134
- describe "AdminSets and PermissionTemplates" do
135
- let(:permission_template) { build(:permission_template, source_id: admin_set.id) }
136
- let(:permission_template_access) { build(:permission_template_access, permission_template: permission_template) }
137
- let(:user) { create(:user) }
138
- let(:admin_set) { create(:admin_set) }
139
-
140
- RSpec.shared_examples 'A user with additional access' do
141
- it { is_expected.to be_able_to(:edit, admin_set) }
142
- it { is_expected.to be_able_to(:update, admin_set) }
143
- it { is_expected.to be_able_to(:destroy, admin_set) }
144
- it { is_expected.to be_able_to(:create, permission_template) }
145
- it { is_expected.to be_able_to(:create, permission_template_access) }
146
- end
147
-
148
- describe 'as admin' do
149
- let(:user) { create(:user, groups: ['admin']) }
150
-
151
- it '#admin? is true' do
152
- expect(ability).to be_admin
153
- end
154
- it_behaves_like 'A user with additional access'
155
- end
156
-
157
- describe 'via AdminSet-specific edit_users' do
158
- let(:admin_set) { create(:admin_set, with_permission_template: true, edit_users: [user]) }
159
-
160
- it '#admin? is false' do
161
- expect(ability).not_to be_admin
162
- end
163
-
164
- it 'A user who can manage an AdminSet' do
165
- create(:permission_template_access,
166
- :manage,
167
- permission_template: admin_set.permission_template,
168
- agent_type: 'user',
169
- agent_id: user.user_key)
170
- is_expected.to be_able_to(:manage_any, AdminSet)
171
- end
172
- it_behaves_like 'A user with additional access'
173
- end
174
-
175
- describe "a user without edit access" do
176
- it { is_expected.not_to be_able_to(:edit, admin_set) }
177
- it { is_expected.not_to be_able_to(:update, admin_set) }
178
- it { is_expected.not_to be_able_to(:destroy, admin_set) }
179
- it { is_expected.not_to be_able_to(:create, permission_template) }
180
- it { is_expected.not_to be_able_to(:create, permission_template_access) }
181
- end
182
- end
183
- end
@@ -1,18 +0,0 @@
1
- require 'cancan/matchers'
2
-
3
- RSpec.describe 'Hyrax::Ability', type: :model do
4
- context "with a registered user" do
5
- let(:user) { create(:user) }
6
-
7
- subject { Ability.new(user) }
8
-
9
- it { is_expected.not_to be_able_to(:read, :admin_dashboard) }
10
- end
11
- context "with an administrative user" do
12
- let(:user) { create(:admin) }
13
-
14
- subject { Ability.new(user) }
15
-
16
- it { is_expected.to be_able_to(:read, :admin_dashboard) }
17
- end
18
- end
@@ -1,177 +0,0 @@
1
- require 'cancan/matchers'
2
-
3
- RSpec.describe 'AdminSetAbility' do
4
- subject { ability }
5
-
6
- let(:ability) { Ability.new(current_user) }
7
- let(:user) { create(:user) }
8
- let(:current_user) { user }
9
- let(:admin_set) { create(:admin_set, edit_users: [user], with_permission_template: true) }
10
-
11
- context 'when user who created the admin set' do
12
- it 'allows the edit_users to edit and read' do
13
- is_expected.to be_able_to(:read, admin_set)
14
- is_expected.to be_able_to(:edit, admin_set)
15
- end
16
- end
17
-
18
- context 'when admin user' do
19
- let(:user) { FactoryBot.create(:admin) }
20
- let!(:solr_document) { SolrDocument.new(admin_set.to_solr) }
21
-
22
- it 'allows all abilities' do # rubocop:disable RSpec/ExampleLength
23
- is_expected.to be_able_to(:manage, AdminSet)
24
- is_expected.to be_able_to(:manage_any, AdminSet)
25
- is_expected.to be_able_to(:create_any, AdminSet)
26
- is_expected.to be_able_to(:create, AdminSet)
27
- is_expected.to be_able_to(:view_admin_show_any, AdminSet)
28
- is_expected.to be_able_to(:edit, admin_set)
29
- is_expected.to be_able_to(:edit, solr_document) # defined in solr_document_ability.rb
30
- is_expected.to be_able_to(:update, admin_set)
31
- is_expected.to be_able_to(:update, solr_document) # defined in solr_document_ability.rb
32
- is_expected.to be_able_to(:destroy, admin_set)
33
- is_expected.to be_able_to(:destroy, solr_document) # defined in solr_document_ability.rb
34
- is_expected.to be_able_to(:deposit, admin_set)
35
- is_expected.to be_able_to(:deposit, solr_document)
36
- is_expected.to be_able_to(:view_admin_show, admin_set)
37
- is_expected.to be_able_to(:view_admin_show, solr_document)
38
- is_expected.to be_able_to(:read, admin_set) # admins can do everything
39
- is_expected.to be_able_to(:read, solr_document) # defined in solr_document_ability.rb
40
- end
41
- end
42
-
43
- context 'when admin set manager' do
44
- let!(:admin_set) { create(:admin_set, id: 'as_mu', with_permission_template: true) }
45
- let!(:solr_document) { SolrDocument.new(admin_set.to_solr) }
46
-
47
- before do
48
- create(:permission_template_access,
49
- :manage,
50
- permission_template: admin_set.permission_template,
51
- agent_type: 'user',
52
- agent_id: user.user_key)
53
- admin_set.reset_access_controls!
54
- end
55
-
56
- it 'allows most abilities' do # rubocop:disable RSpec/ExampleLength
57
- is_expected.to be_able_to(:manage_any, AdminSet)
58
- is_expected.to be_able_to(:view_admin_show_any, AdminSet)
59
- is_expected.to be_able_to(:edit, admin_set) # defined in solr_document_ability.rb
60
- is_expected.to be_able_to(:edit, solr_document)
61
- is_expected.to be_able_to(:update, admin_set) # defined in solr_document_ability.rb
62
- is_expected.to be_able_to(:update, solr_document)
63
- is_expected.to be_able_to(:destroy, admin_set) # defined in solr_document_ability.rb
64
- is_expected.to be_able_to(:destroy, solr_document)
65
- is_expected.to be_able_to(:deposit, admin_set)
66
- is_expected.to be_able_to(:deposit, solr_document)
67
- is_expected.to be_able_to(:view_admin_show, admin_set)
68
- is_expected.to be_able_to(:view_admin_show, solr_document)
69
- is_expected.to be_able_to(:read, admin_set) # edit access grants read and write
70
- is_expected.to be_able_to(:read, solr_document) # edit access grants read and write # defined in solr_document_ability.rb
71
- end
72
-
73
- it 'denies manage ability' do
74
- is_expected.not_to be_able_to(:manage, AdminSet)
75
- is_expected.not_to be_able_to(:create_any, AdminSet) # granted by collection type, not collection
76
- is_expected.not_to be_able_to(:create, AdminSet)
77
- end
78
- end
79
-
80
- context 'when admin set depositor' do
81
- let!(:admin_set) { create(:admin_set, id: 'as_du', with_permission_template: true) }
82
- let!(:solr_document) { SolrDocument.new(admin_set.to_solr) }
83
-
84
- before do
85
- create(:permission_template_access,
86
- :deposit,
87
- permission_template: admin_set.permission_template,
88
- agent_type: 'user',
89
- agent_id: user.user_key)
90
- admin_set.reset_access_controls!
91
- end
92
-
93
- it 'allows deposit related abilities' do
94
- is_expected.to be_able_to(:view_admin_show_any, AdminSet)
95
- is_expected.to be_able_to(:deposit, admin_set)
96
- is_expected.to be_able_to(:deposit, solr_document)
97
- is_expected.to be_able_to(:view_admin_show, admin_set)
98
- is_expected.to be_able_to(:view_admin_show, solr_document)
99
- end
100
-
101
- it 'denies non-deposit related abilities' do # rubocop:disable RSpec/ExampleLength
102
- is_expected.not_to be_able_to(:manage, AdminSet)
103
- is_expected.not_to be_able_to(:manage_any, AdminSet)
104
- is_expected.not_to be_able_to(:create_any, AdminSet) # granted by collection type, not collection
105
- is_expected.not_to be_able_to(:create, AdminSet)
106
- is_expected.not_to be_able_to(:edit, admin_set)
107
- is_expected.not_to be_able_to(:edit, solr_document) # defined in solr_document_ability.rb
108
- is_expected.not_to be_able_to(:update, admin_set)
109
- is_expected.not_to be_able_to(:update, solr_document) # defined in solr_document_ability.rb
110
- is_expected.not_to be_able_to(:destroy, admin_set)
111
- is_expected.not_to be_able_to(:destroy, solr_document) # defined in solr_document_ability.rb
112
- is_expected.not_to be_able_to(:read, admin_set) # no public page for admin sets
113
- is_expected.not_to be_able_to(:read, solr_document) # defined in solr_document_ability.rb
114
- end
115
- end
116
-
117
- context 'when admin set viewer' do
118
- let!(:admin_set) { create(:admin_set, id: 'as_vu', with_permission_template: true) }
119
- let!(:solr_document) { SolrDocument.new(admin_set.to_solr) }
120
-
121
- before do
122
- create(:permission_template_access,
123
- :view,
124
- permission_template: admin_set.permission_template,
125
- agent_type: 'user',
126
- agent_id: user.user_key)
127
- admin_set.reset_access_controls!
128
- end
129
-
130
- it 'allows viewing only ability' do
131
- is_expected.to be_able_to(:view_admin_show_any, AdminSet)
132
- is_expected.to be_able_to(:view_admin_show, admin_set)
133
- end
134
-
135
- it 'denies most abilities' do # rubocop:disable RSpec/ExampleLength
136
- is_expected.not_to be_able_to(:manage, AdminSet)
137
- is_expected.not_to be_able_to(:manage_any, AdminSet)
138
- is_expected.not_to be_able_to(:create_any, AdminSet) # granted by collection type, not collection
139
- is_expected.not_to be_able_to(:create, AdminSet)
140
- is_expected.not_to be_able_to(:edit, admin_set)
141
- is_expected.not_to be_able_to(:edit, solr_document) # defined in solr_document_ability.rb
142
- is_expected.not_to be_able_to(:update, admin_set)
143
- is_expected.not_to be_able_to(:update, solr_document) # defined in solr_document_ability.rb
144
- is_expected.not_to be_able_to(:destroy, admin_set)
145
- is_expected.not_to be_able_to(:destroy, solr_document) # defined in solr_document_ability.rb
146
- is_expected.not_to be_able_to(:deposit, admin_set)
147
- is_expected.not_to be_able_to(:deposit, solr_document)
148
- is_expected.not_to be_able_to(:read, admin_set) # no public page for admin sets
149
- is_expected.not_to be_able_to(:read, solr_document) # defined in solr_document_ability.rb
150
- end
151
- end
152
-
153
- context 'when user has no special access' do
154
- let(:admin_set) { create(:admin_set, id: 'as', with_permission_template: true) }
155
- let!(:solr_document) { SolrDocument.new(admin_set.to_solr) }
156
-
157
- it 'denies all abilities' do # rubocop:disable RSpec/ExampleLength
158
- is_expected.not_to be_able_to(:manage, AdminSet)
159
- is_expected.not_to be_able_to(:manage_any, AdminSet)
160
- is_expected.not_to be_able_to(:create_any, AdminSet) # granted by collection type, not collection
161
- is_expected.not_to be_able_to(:create, AdminSet)
162
- is_expected.not_to be_able_to(:view_admin_show_any, AdminSet)
163
- is_expected.not_to be_able_to(:edit, admin_set)
164
- is_expected.not_to be_able_to(:edit, solr_document) # defined in solr_document_ability.rb
165
- is_expected.not_to be_able_to(:update, admin_set)
166
- is_expected.not_to be_able_to(:update, solr_document) # defined in solr_document_ability.rb
167
- is_expected.not_to be_able_to(:destroy, admin_set)
168
- is_expected.not_to be_able_to(:destroy, solr_document) # defined in solr_document_ability.rb
169
- is_expected.not_to be_able_to(:deposit, admin_set)
170
- is_expected.not_to be_able_to(:deposit, solr_document) # defined in solr_document_ability.rb
171
- is_expected.not_to be_able_to(:view_admin_show, admin_set)
172
- is_expected.not_to be_able_to(:view_admin_show, solr_document)
173
- is_expected.not_to be_able_to(:read, admin_set) # no public page for admin sets
174
- is_expected.not_to be_able_to(:read, solr_document) # defined in solr_document_ability.rb
175
- end
176
- end
177
- end
@@ -1,194 +0,0 @@
1
- require 'cancan/matchers'
2
-
3
- RSpec.describe 'CollectionAbility' do
4
- subject { ability }
5
-
6
- let(:ability) { Ability.new(current_user) }
7
- let(:user) { create(:user) }
8
- let(:current_user) { user }
9
- let(:collection_type_gid) { create(:collection_type).gid }
10
-
11
- context 'when admin user' do
12
- let(:user) { FactoryBot.create(:admin) }
13
- let!(:collection) { build(:collection_lw, id: 'col_au', with_permission_template: true, collection_type_gid: collection_type_gid) }
14
- let!(:solr_document) { SolrDocument.new(collection.to_solr) }
15
-
16
- it 'allows all abilities' do # rubocop:disable RSpec/ExampleLength
17
- is_expected.to be_able_to(:manage, Collection)
18
- is_expected.to be_able_to(:manage_any, Collection)
19
- is_expected.to be_able_to(:create_any, Collection)
20
- is_expected.to be_able_to(:view_admin_show_any, Collection)
21
- is_expected.to be_able_to(:edit, collection)
22
- is_expected.to be_able_to(:edit, solr_document) # defined in solr_document_ability.rb
23
- is_expected.to be_able_to(:update, collection)
24
- is_expected.to be_able_to(:update, solr_document) # defined in solr_document_ability.rb
25
- is_expected.to be_able_to(:destroy, collection)
26
- is_expected.to be_able_to(:destroy, solr_document) # defined in solr_document_ability.rb
27
- is_expected.to be_able_to(:deposit, collection)
28
- is_expected.to be_able_to(:deposit, solr_document)
29
- is_expected.to be_able_to(:view_admin_show, collection)
30
- is_expected.to be_able_to(:view_admin_show, solr_document)
31
- is_expected.to be_able_to(:read, collection)
32
- is_expected.to be_able_to(:read, solr_document) # defined in solr_document_ability.rb
33
- end
34
- end
35
-
36
- context 'when collection manager' do
37
- let!(:collection) { build(:collection_lw, id: 'col_mu', with_permission_template: true, collection_type_gid: collection_type_gid) }
38
- let!(:solr_document) { SolrDocument.new(collection.to_solr) }
39
-
40
- before do
41
- create(:permission_template_access,
42
- :manage,
43
- permission_template: collection.permission_template,
44
- agent_type: 'user',
45
- agent_id: user.user_key)
46
- collection.reset_access_controls!
47
- end
48
-
49
- it 'allows most abilities' do # rubocop:disable RSpec/ExampleLength
50
- is_expected.to be_able_to(:manage_any, Collection)
51
- is_expected.to be_able_to(:view_admin_show_any, Collection)
52
- is_expected.to be_able_to(:edit, collection)
53
- is_expected.to be_able_to(:edit, solr_document) # defined in solr_document_ability.rb
54
- is_expected.to be_able_to(:update, collection)
55
- is_expected.to be_able_to(:update, solr_document) # defined in solr_document_ability.rb
56
- is_expected.to be_able_to(:destroy, collection)
57
- is_expected.to be_able_to(:destroy, solr_document) # defined in solr_document_ability.rb
58
- is_expected.to be_able_to(:deposit, collection)
59
- is_expected.to be_able_to(:deposit, solr_document)
60
- is_expected.to be_able_to(:view_admin_show, collection)
61
- is_expected.to be_able_to(:view_admin_show, solr_document)
62
- is_expected.to be_able_to(:read, collection) # edit access grants read and write
63
- is_expected.to be_able_to(:read, solr_document) # defined in solr_document_ability.rb
64
- end
65
-
66
- it 'denies manage ability' do
67
- is_expected.not_to be_able_to(:manage, Collection)
68
- end
69
- end
70
-
71
- context 'when collection depositor' do
72
- let!(:collection) { build(:collection_lw, id: 'col_du', with_permission_template: true, collection_type_gid: collection_type_gid) }
73
- let!(:solr_document) { SolrDocument.new(collection.to_solr) }
74
-
75
- before do
76
- create(:permission_template_access,
77
- :deposit,
78
- permission_template: collection.permission_template,
79
- agent_type: 'user',
80
- agent_id: user.user_key)
81
- collection.reset_access_controls!
82
- end
83
-
84
- it 'allows deposit related abilities' do
85
- is_expected.to be_able_to(:view_admin_show_any, Collection)
86
- is_expected.to be_able_to(:deposit, collection)
87
- is_expected.to be_able_to(:deposit, solr_document)
88
- is_expected.to be_able_to(:view_admin_show, collection)
89
- is_expected.to be_able_to(:view_admin_show, solr_document)
90
- end
91
-
92
- it 'denies non-deposit related abilities' do # rubocop:disable RSpec/ExampleLength
93
- is_expected.not_to be_able_to(:manage, Collection)
94
- is_expected.not_to be_able_to(:manage_any, Collection)
95
- is_expected.not_to be_able_to(:edit, collection)
96
- is_expected.not_to be_able_to(:edit, solr_document) # defined in solr_document_ability.rb
97
- is_expected.not_to be_able_to(:update, collection)
98
- is_expected.not_to be_able_to(:update, solr_document) # defined in solr_document_ability.rb
99
- is_expected.not_to be_able_to(:destroy, collection)
100
- is_expected.not_to be_able_to(:destroy, solr_document) # defined in solr_document_ability.rb
101
- is_expected.not_to be_able_to(:read, collection)
102
- is_expected.not_to be_able_to(:read, solr_document) # defined in solr_document_ability.rb
103
- end
104
- end
105
-
106
- context 'when collection viewer' do
107
- let!(:collection) { build(:collection_lw, id: 'col_vu', with_permission_template: true, collection_type_gid: collection_type_gid) }
108
- let!(:solr_document) { SolrDocument.new(collection.to_solr) }
109
-
110
- before do
111
- create(:permission_template_access,
112
- :view,
113
- permission_template: collection.permission_template,
114
- agent_type: 'user',
115
- agent_id: user.user_key)
116
- collection.reset_access_controls!
117
- end
118
-
119
- it 'allows viewing only ability' do
120
- is_expected.to be_able_to(:view_admin_show_any, Collection)
121
- is_expected.to be_able_to(:view_admin_show, collection)
122
- is_expected.to be_able_to(:view_admin_show, solr_document)
123
- is_expected.to be_able_to(:read, collection)
124
- is_expected.to be_able_to(:read, solr_document)
125
- end
126
-
127
- it 'denies most abilities' do # rubocop:disable RSpec/ExampleLength
128
- is_expected.not_to be_able_to(:manage, Collection)
129
- is_expected.not_to be_able_to(:manage_any, Collection)
130
- is_expected.not_to be_able_to(:edit, collection)
131
- is_expected.not_to be_able_to(:edit, solr_document) # defined in solr_document_ability.rb
132
- is_expected.not_to be_able_to(:update, collection)
133
- is_expected.not_to be_able_to(:update, solr_document) # defined in solr_document_ability.rb
134
- is_expected.not_to be_able_to(:destroy, collection)
135
- is_expected.not_to be_able_to(:destroy, solr_document) # defined in solr_document_ability.rb
136
- is_expected.not_to be_able_to(:deposit, collection)
137
- is_expected.not_to be_able_to(:deposit, solr_document)
138
- end
139
- end
140
-
141
- context 'when user has no special access' do
142
- let!(:collection) { create(:collection_lw, id: 'as', with_permission_template: true, collection_type_gid: collection_type_gid) }
143
- let!(:solr_document) { SolrDocument.new(collection.to_solr) }
144
-
145
- it 'denies all abilities' do # rubocop:disable RSpec/ExampleLength
146
- is_expected.not_to be_able_to(:manage, Collection)
147
- is_expected.not_to be_able_to(:manage_any, Collection)
148
- is_expected.not_to be_able_to(:view_admin_show_any, Collection)
149
- is_expected.not_to be_able_to(:edit, collection)
150
- is_expected.not_to be_able_to(:edit, solr_document) # defined in solr_document_ability.rb
151
- is_expected.not_to be_able_to(:update, collection)
152
- is_expected.not_to be_able_to(:update, solr_document) # defined in solr_document_ability.rb
153
- is_expected.not_to be_able_to(:destroy, collection)
154
- is_expected.not_to be_able_to(:destroy, solr_document) # defined in solr_document_ability.rb
155
- is_expected.not_to be_able_to(:deposit, collection)
156
- is_expected.not_to be_able_to(:deposit, solr_document)
157
- is_expected.not_to be_able_to(:view_admin_show, collection)
158
- is_expected.not_to be_able_to(:view_admin_show, solr_document)
159
- is_expected.not_to be_able_to(:read, collection)
160
- is_expected.not_to be_able_to(:read, solr_document) # defined in solr_document_ability.rb
161
- end
162
- end
163
-
164
- context 'create_any' do
165
- # Whether a user can create a collection depends on collection type participants, so need to test separately.
166
-
167
- context 'when there are no collection types that have create access' do
168
- before do
169
- # User Collection type is always created and gives all users the ability to create. To be able to test that
170
- # particular roles don't automatically give users create abilities, the create access for User Collection type
171
- # has to be removed.
172
- uct = Hyrax::CollectionType.find_by(machine_id: Hyrax::CollectionType::USER_COLLECTION_MACHINE_ID)
173
- if uct.present?
174
- uctp = Hyrax::CollectionTypeParticipant.find_by(hyrax_collection_type_id: uct.id, access: "create")
175
- uctp.destroy if uctp.present?
176
- end
177
- end
178
-
179
- it 'denies create_any' do
180
- is_expected.not_to be_able_to(:create_any, Collection)
181
- end
182
- end
183
-
184
- context 'when there are collection types that have create access' do
185
- before do
186
- create(:user_collection_type)
187
- end
188
-
189
- it 'allows create_any' do
190
- is_expected.to be_able_to(:create_any, Collection)
191
- end
192
- end
193
- end
194
- end