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,91 +0,0 @@
1
- FactoryBot.define do
2
- factory :post_item, class: Hash do
3
- skip_create
4
-
5
- token { 'mock_token' }
6
-
7
- metadata do
8
- {
9
- resourceType: 'Dataset',
10
- title: 'Findings from NSF Study',
11
- creators: [
12
- {
13
- creatorType: 'author',
14
- firstName: 'John',
15
- lastName: 'Doe'
16
- },
17
- {
18
- creatorType: 'seriesEditor',
19
- firstName: 'Rafael',
20
- lastName: 'Nadal'
21
- },
22
- {
23
- creatorType: 'inventor',
24
- name: 'Babs McGee'
25
- },
26
- {
27
- creatorType: 'contributor',
28
- name: 'Jane Doeski'
29
- }
30
- ],
31
- description: 'This was funded by the NSF in 2013',
32
- publisher: 'National Science Foundation',
33
- dateCreated: '2014-11-02T14:24:64Z',
34
- basedNear: 'Paris, France',
35
- identifier: 'isbn:1234567890',
36
- url: 'http://example.org/nsf/2013/datasets/',
37
- language: 'English--New Jerseyan',
38
- license: 'http://creativecommons.org/licenses/by-sa/3.0/us/',
39
- tags: [
40
- 'datasets',
41
- 'nsf',
42
- 'stuff'
43
- ]
44
- }
45
- end
46
-
47
- file do
48
- {
49
- base64: 'YXJraXZvCg==',
50
- md5: 'f03313ded2feb96f0a641b8eb098aae0',
51
- filename: 'file.txt',
52
- contentType: 'text/plain'
53
- }
54
- end
55
-
56
- initialize_with { attributes }
57
- end
58
-
59
- factory :put_item, class: Hash, parent: :post_item do
60
- metadata do
61
- {
62
- resourceType: 'Article',
63
- title: 'THE REAL FINDINGS',
64
- creators: [
65
- {
66
- creatorType: 'author',
67
- firstName: 'John',
68
- lastName: 'Doe'
69
- },
70
- {
71
- creatorType: 'inventor',
72
- name: 'Babs McGee'
73
- }
74
- ],
75
- license: 'http://creativecommons.org/licenses/by-sa/3.0/us/',
76
- tags: [
77
- 'datasets'
78
- ]
79
- }
80
- end
81
-
82
- file do
83
- {
84
- base64: 'IyBIRUFERVIKClRoaXMgaXMgYSBwYXJhZ3JhcGghCg==',
85
- md5: '3923077bb477097b8496dbcff5fa44b3',
86
- filename: 'replaced.md',
87
- contentType: 'text/x-markdown'
88
- }
89
- end
90
- end
91
- end
@@ -1,11 +0,0 @@
1
- FactoryBot.define do
2
- factory :collection_branding_info do
3
- collection_id { "1" }
4
- role { "banner" }
5
- local_path { "/fake/path/to/banner.png" }
6
- alt_text { "This is the banner" }
7
- target_url { "http://example.com/" }
8
- height { "" }
9
- width { "" }
10
- end
11
- end
@@ -1,8 +0,0 @@
1
- FactoryBot.define do
2
- factory :collection_type_participant, class: Hyrax::CollectionTypeParticipant do
3
- association :hyrax_collection_type, factory: :collection_type
4
- sequence(:agent_id) { |n| "user#{n}@example.com" }
5
- agent_type { 'user' }
6
- access { Hyrax::CollectionTypeParticipant::MANAGE_ACCESS }
7
- end
8
- end
@@ -1,113 +0,0 @@
1
- FactoryBot.define do
2
- factory :collection_type, class: Hyrax::CollectionType do
3
- sequence(:title) { |n| "Collection Type #{n}" }
4
- sequence(:machine_id) { |n| "title_#{n}" }
5
-
6
- description { 'Collection type with all options' }
7
- nestable { true }
8
- discoverable { true }
9
- sharable { true }
10
- brandable { true }
11
- share_applies_to_new_works { true }
12
- allow_multiple_membership { true }
13
- require_membership { false }
14
- assigns_workflow { false }
15
- assigns_visibility { false }
16
-
17
- transient do
18
- creator_user { nil }
19
- creator_group { nil }
20
- manager_user { nil }
21
- manager_group { nil }
22
- end
23
-
24
- after(:create) do |collection_type, evaluator|
25
- if evaluator.creator_user
26
- attributes = { hyrax_collection_type_id: collection_type.id,
27
- access: Hyrax::CollectionTypeParticipant::CREATE_ACCESS,
28
- agent_id: evaluator.creator_user,
29
- agent_type: Hyrax::CollectionTypeParticipant::USER_TYPE }
30
- create(:collection_type_participant, attributes)
31
- end
32
-
33
- if evaluator.creator_group
34
- attributes = { hyrax_collection_type_id: collection_type.id,
35
- access: Hyrax::CollectionTypeParticipant::CREATE_ACCESS,
36
- agent_id: evaluator.creator_group,
37
- agent_type: Hyrax::CollectionTypeParticipant::GROUP_TYPE }
38
- create(:collection_type_participant, attributes)
39
- end
40
-
41
- if evaluator.manager_user
42
- attributes = { hyrax_collection_type_id: collection_type.id,
43
- access: Hyrax::CollectionTypeParticipant::MANAGE_ACCESS,
44
- agent_id: evaluator.manager_user,
45
- agent_type: Hyrax::CollectionTypeParticipant::USER_TYPE }
46
- create(:collection_type_participant, attributes)
47
- end
48
-
49
- if evaluator.manager_group
50
- attributes = { hyrax_collection_type_id: collection_type.id,
51
- access: Hyrax::CollectionTypeParticipant::MANAGE_ACCESS,
52
- agent_id: evaluator.manager_group,
53
- agent_type: Hyrax::CollectionTypeParticipant::GROUP_TYPE }
54
- create(:collection_type_participant, attributes)
55
- end
56
- end
57
-
58
- trait :nestable do
59
- nestable { true }
60
- end
61
-
62
- trait :not_nestable do
63
- nestable { false }
64
- end
65
-
66
- trait :discoverable do
67
- discoverable { true }
68
- end
69
-
70
- trait :not_discoverable do
71
- discoverable { false }
72
- end
73
-
74
- trait :brandable do
75
- brandable { true }
76
- end
77
-
78
- trait :not_brandable do
79
- brandable { false }
80
- end
81
-
82
- trait :sharable do
83
- sharable { true }
84
- share_applies_to_new_works { true }
85
- end
86
-
87
- trait :sharable_no_work_permissions do
88
- sharable { true }
89
- share_applies_to_new_works { false }
90
- end
91
-
92
- trait :not_sharable do
93
- sharable { false }
94
- share_applies_to_new_works { false }
95
- end
96
-
97
- trait :allow_multiple_membership do
98
- allow_multiple_membership { true }
99
- end
100
-
101
- trait :not_allow_multiple_membership do
102
- allow_multiple_membership { false }
103
- end
104
- end
105
-
106
- factory :user_collection_type, class: Hyrax::CollectionType do
107
- initialize_with { Hyrax::CollectionType.find_or_create_default_collection_type }
108
- end
109
-
110
- factory :admin_set_collection_type, class: Hyrax::CollectionType do
111
- initialize_with { Hyrax::CollectionType.find_or_create_admin_set_type }
112
- end
113
- end
@@ -1,325 +0,0 @@
1
- FactoryBot.define do
2
- # Tests that create a Fedora Object are very slow. This factory lets you control which parts of the object ecosystem
3
- # get built.
4
- #
5
- # PREFERRED: Use build whenever possible. You can control the creation of the permission template, collection type, and
6
- # solr document by passing parameters to the build(:collection_lw) method. That way you can build only the parts
7
- # needed for a specific test.
8
- #
9
- # AVOID: Do not use create unless absolutely necessary. It will create everything including the Fedora object.
10
- #
11
- # @example Simple build of a collection with no additional parts created. Lightest weight.
12
- # NOTE: A user is automatically created as the owner of the collection.
13
- # let(:collection) { build(:collection_lw) }
14
- #
15
- # @example Simple build of a collection with no additional parts created. User is the owner of the collection. Lightest weight.
16
- # let(:collection) { build(:collection_lw, user:) }
17
- #
18
- # @example Simple build of a collection with only solr-document. Owner is given edit-access in solr-document. Light weight.
19
- # let(:collection) { build(:collection_lw, with_solr_document: true) }
20
- #
21
- # @example Simple build of a collection with only a permission template created. Owner is set as a manager. Light weight.
22
- # let(:collection) { build(:collection_lw, with_permission_template: true) }
23
- #
24
- # @example Build a collection with only a permission template created. Permissions are set based on
25
- # attributes set for `with_permission_template`. Middle weight.
26
- # # permissions passed thru `with_permission_template` can be any of the following in any combination
27
- # let(:permissions) { { manage_users: [user.user_key], # multiple users can be listed
28
- # deposit_users: [user.user_key],
29
- # view_users: [user.user_key],
30
- # manage_groups: [group_name], # multiple groups can be listed
31
- # deposit_groups: [group_name],
32
- # view_groups: [group_name], } }
33
- # let(:collection) { build(:collection_lw, user: , with_permission_template: permissions) }
34
- #
35
- # @example Build a collection with permission template and solr-document created. Permissions are set based on
36
- # attributes set for `with_permission_template`. Solr-document includes read/edit access defined based
37
- # on attributes passed thru `with_permission_template`. Middle weight.
38
- # # permissions passed thru `with_permission_template` can be any of the following in any combination
39
- # let(:permissions) { { manage_users: [user.user_key], # multiple users can be listed
40
- # deposit_users: [user.user_key],
41
- # view_users: [user.user_key],
42
- # manage_groups: [group_name], # multiple groups can be listed
43
- # deposit_groups: [group_name],
44
- # view_groups: [group_name], } }
45
- # let(:collection) { build(:collection_lw, user: , with_permission_template: permissions, with_solr_document: true) }
46
- #
47
- # @example Build a collection generating its collection type with specific settings. Light Weight.
48
- # NOTE: Do not use this approach if you need access to the collection type in the test.
49
- # DEFAULT: If `collection_type_settings` and `collection_type_gid` are not specified, then the default
50
- # User Collection type will be used.
51
- # # Any not specified default to ON. At least one setting should be specified.
52
- # let(:settings) { [
53
- # :nestable, # OR :not_nestable,
54
- # :discoverable, # OR :not_discoverable
55
- # :brandable, # OR :not_brandable
56
- # :sharable, # OR :not_sharable OR :sharable_no_work_permissions
57
- # :allow_multiple_membership, # OR :not_allow_multiple_membership
58
- # ] }
59
- # let(:collection) { build(:collection_lw, collection_type_settings: settings) }
60
- #
61
- # @example Build a collection using the passed in collection type. Light Weight.
62
- # NOTE: Use this approach if you need access to the collection type in the test.
63
- # # Any not specified default to ON. At least one setting should be specified.
64
- # let(:settings) { [
65
- # :nestable, # OR :not_nestable,
66
- # :discoverable, # OR :not_discoverable
67
- # :brandable, # OR :not_brandable
68
- # :sharable, # OR :not_sharable OR :sharable_no_work_permissions
69
- # :allow_multiple_membership, # OR :not_allow_multiple_membership
70
- # ] }
71
- # let(:collection_type) { create(:collection_lw_type, settings) }
72
- # let(:collection) { build(:collection_lw, collection_type_gid: collection_type.gid) }
73
- #
74
- # @example Build a collection with nesting fields set in the solr document. Light weight.
75
- # NOTE: The property `with_nesting_attributes` is only supported for building collections. The attributes will
76
- # be overwritten by the save process when creating a collection, thus effectively ignoring this property.
77
- # let(:collection) { build(:collection_lw, with_nesting_attributes: { ancestors: ['Parent_1'],
78
- # parent_ids: ['Parent_1'],
79
- # pathnames: ['Parent_1/Collection123'],
80
- # depth: 2 }) }
81
- #
82
- # @example Create a collection with everything. Extreme heavy weight. This is very slow and should be avoided.
83
- # NOTE: Everything gets created.
84
- # NOTE: Build options effect created collections as follows...
85
- # * `with_permission_template` can specify user/group permissions. A permission template is always created.
86
- # * `collection_type_settings` can specify to create a collection type with specific settings
87
- # * `with_solr_document` is ignored. A solr document is always created.
88
- # * `with_nested_attributes` is ignored.
89
- # NOTE: Additional process is required for testing nested collections with Fedora objects. See next example.
90
- # let(:collection) { create(:collection_lw) }
91
- #
92
- # @example Create collections for use with nested collection index testing.
93
- # NOTE: For light weight nested collection testing using solr documents only, see `with_nested_attributes` above
94
- # NOTE: Full indexed nested collections with solr documents and Fedora objects are created by...
95
- # * creating multiple collections (expensive)
96
- # * nesting them and saving - causing reindex of the Fedora objects (expensive)
97
- # For tests of nesting functionality requiring the Fedora object and reindexing, in the test itself
98
- # include `:with_nested_reindexing`
99
- # it "returns the collection and its members", :with_nested_reindexing do
100
-
101
- factory :collection_lw, class: Collection do
102
- transient do
103
- user { create(:user) }
104
-
105
- collection_type_settings { nil }
106
- with_permission_template { false }
107
- with_nesting_attributes { nil }
108
- with_solr_document { false }
109
- end
110
- sequence(:title) { |n| ["Collection Title #{n}"] }
111
-
112
- after(:build) do |collection, evaluator|
113
- collection.apply_depositor_metadata(evaluator.user.user_key)
114
-
115
- CollectionLwFactoryHelper.process_collection_type_settings(collection, evaluator)
116
- CollectionLwFactoryHelper.process_with_permission_template(collection, evaluator)
117
- CollectionLwFactoryHelper.process_with_solr_document(collection, evaluator)
118
- CollectionLwFactoryHelper.process_with_nesting_attributes(collection, evaluator)
119
- end
120
-
121
- before(:create) do |collection, evaluator|
122
- # force create a permission template if it doesn't exist for the newly created collection
123
- CollectionLwFactoryHelper.process_with_permission_template(collection, evaluator, true) unless evaluator.with_permission_template
124
- end
125
-
126
- after(:create) do |collection, _evaluator|
127
- collection.reset_access_controls!
128
- end
129
-
130
- factory :public_collection_lw, traits: [:public_lw]
131
-
132
- factory :private_collection_lw do
133
- visibility { Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PRIVATE }
134
- end
135
-
136
- factory :institution_collection_lw do
137
- visibility { Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_AUTHENTICATED }
138
- end
139
-
140
- factory :named_collection_lw do
141
- title { ['collection title'] }
142
- description { ['collection description'] }
143
- end
144
-
145
- trait :public_lw do
146
- visibility { Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PUBLIC }
147
- end
148
-
149
- trait :private_lw do
150
- visibility { Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PRIVATE }
151
- end
152
-
153
- trait :institution_lw do
154
- visibility { Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_AUTHENTICATED }
155
- end
156
-
157
- trait :public_lw do
158
- visibility { Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PUBLIC }
159
- end
160
- end
161
-
162
- factory :user_collection_lw, class: Collection do
163
- transient do
164
- user { create(:user) }
165
- end
166
-
167
- sequence(:title) { |n| ["User Collection Title #{n}"] }
168
-
169
- after(:build) do |collection, evaluator|
170
- collection.apply_depositor_metadata(evaluator.user.user_key)
171
- collection_type = create(:user_collection_type)
172
- collection.collection_type_gid = collection_type.gid
173
- end
174
- end
175
-
176
- factory :typeless_collection_lw, class: Collection do
177
- # To create a pre-Hyrax 2.1.0 collection without a collection type gid...
178
- # col = build(:typeless_collection, ...)
179
- # col.save(validate: false)
180
- transient do
181
- user { create(:user) }
182
- with_permission_template { false }
183
- do_save { false }
184
- end
185
-
186
- sequence(:title) { |n| ["Typeless Collection Title #{n}"] }
187
-
188
- after(:build) do |collection, evaluator|
189
- collection.apply_depositor_metadata(evaluator.user.user_key)
190
- collection.save(validate: false) if evaluator.do_save || evaluator.with_permission_template
191
- if evaluator.with_permission_template
192
- attributes = { source_id: collection.id }
193
- attributes[:manage_users] = [evaluator.user]
194
- attributes = evaluator.with_permission_template.merge(attributes) if evaluator.with_permission_template.respond_to?(:merge)
195
- create(:permission_template, attributes) unless Hyrax::PermissionTemplate.find_by(source_id: collection.id)
196
- end
197
- end
198
- end
199
-
200
- class CollectionLwFactoryHelper
201
- # @returns array of user keys
202
- def self.permission_from_template(permission_template_attributes, permission_key)
203
- permissions = []
204
- return permissions if permission_template_attributes.blank?
205
- return permissions unless permission_template_attributes.is_a? Hash
206
- return permissions unless permission_template_attributes.key?(permission_key)
207
- permission_template_attributes[permission_key]
208
- end
209
- private_class_method :permission_from_template
210
-
211
- # @param [Hash] permission_template_attributes where names identify the role and value are the user keys for that role
212
- # @parem [String] creator_user is the user who created the new collection
213
- # @param [Boolean] include_creator, when true, adds the creator_user as a manager
214
- # @returns array of user keys
215
- def self.user_managers(permission_template_attributes, creator_user)
216
- managers = permission_from_template(permission_template_attributes, :manage_users)
217
- managers << creator_user
218
- managers
219
- end
220
-
221
- # @param [Hash] permission_template_attributes where names identify the role and value are the user keys for that role
222
- # @returns array of user keys
223
- def self.group_managers(permission_template_attributes)
224
- permission_from_template(permission_template_attributes, :manage_groups)
225
- end
226
-
227
- # @param [Hash] permission_template_attributes where names identify the role and value are the user keys for that role
228
- # @returns array of user keys
229
- def self.user_depositors(permission_template_attributes)
230
- permission_from_template(permission_template_attributes, :deposit_users)
231
- end
232
-
233
- # @param [Hash] permission_template_attributes where names identify the role and value are the user keys for that role
234
- # @returns array of user keys
235
- def self.group_depositors(permission_template_attributes)
236
- permission_from_template(permission_template_attributes, :deposit_groups)
237
- end
238
-
239
- # @param [Hash] permission_template_attributes where names identify the role and value are the user keys for that role
240
- # @returns array of user keys
241
- def self.user_viewers(permission_template_attributes)
242
- permission_from_template(permission_template_attributes, :view_users)
243
- end
244
-
245
- # @param [Hash] permission_template_attributes where names identify the role and value are the user keys for that role
246
- # @returns array of user keys
247
- def self.group_viewers(permission_template_attributes)
248
- permission_from_template(permission_template_attributes, :view_groups)
249
- end
250
-
251
- # Process the collection_type_settings transient property such that...
252
- # * creates the collection type with specified settings if collection_type_settings has settings (ignores collection_type_gid)
253
- # * uses passed in collection type if collection_type_gid is specified AND collection_type_settings is nil
254
- # * uses default User Collection type if neither are specified
255
- # @param [Collection] collection object being built/created by the factory
256
- # @param [Class] evaluator holding the transient properties for the current build/creation process
257
- def self.process_collection_type_settings(collection, evaluator)
258
- if evaluator.collection_type_settings.present?
259
- collection.collection_type = FactoryBot.create(:collection_type, *evaluator.collection_type_settings)
260
- elsif collection.collection_type_gid.blank?
261
- collection.collection_type = FactoryBot.create(:user_collection_type)
262
- end
263
- end
264
-
265
- # Process the with_permission_template transient property such that...
266
- # * a permission template is created for the collection
267
- # * a permission template access is created for the collection creator
268
- # * additional permission template accesses are created for each user/group identified in the attributes
269
- # of with_permission_template (created by the permission_template factory)
270
- # @param [Collection] collection object being built/created by the factory
271
- # @param [Class] evaluator holding the transient properties for the current build/creation process
272
- # @param [Boolean] if true, force the permission template to be created
273
- def self.process_with_permission_template(collection, evaluator, force = false)
274
- return unless force || evaluator.with_permission_template || RSpec.current_example.metadata[:with_nested_reindexing]
275
- collection.id ||= FactoryBot.generate(:object_id)
276
- attributes = { source_id: collection.id }
277
- attributes[:manage_users] = user_managers(evaluator.with_permission_template, evaluator.user)
278
- attributes = evaluator.with_permission_template.merge(attributes) if evaluator.with_permission_template.respond_to?(:merge)
279
- FactoryBot.create(:permission_template, attributes) unless Hyrax::PermissionTemplate.find_by(source_id: collection.id)
280
- end
281
-
282
- # Process the with_nesting_attributes transient property such that...
283
- # * adds nesting related solr-document fields for ancestors, parent_ids, pathnames, and depth
284
- # @param [Collection] collection object being built/created by the factory
285
- # @param [Class] evaluator holding the transient properties for the current build/creation process
286
- def self.process_with_nesting_attributes(collection, evaluator)
287
- return unless evaluator.with_nesting_attributes.present? && collection.nestable?
288
- Hyrax::Adapters::NestingIndexAdapter.add_nesting_attributes(
289
- solr_doc: solr_document_with_permissions(collection, evaluator),
290
- ancestors: evaluator.with_nesting_attributes[:ancestors],
291
- parent_ids: evaluator.with_nesting_attributes[:parent_ids],
292
- pathnames: evaluator.with_nesting_attributes[:pathnames],
293
- depth: evaluator.with_nesting_attributes[:depth]
294
- )
295
- end
296
-
297
- # Process the with_solr_document transient property such that...
298
- # * a solr document is created for the collection
299
- # * permissions identified by with_permission_template, if any, are added to the solr fields
300
- # @param [Collection] collection object being built/created by the factory
301
- # @param [Class] evaluator holding the transient properties for the current build/creation process
302
- def self.process_with_solr_document(collection, evaluator)
303
- return unless evaluator.with_solr_document
304
- return if evaluator.with_nesting_attributes.present? && collection.nestable? # will create the solr document there instead
305
- ActiveFedora::SolrService.add(solr_document_with_permissions(collection, evaluator), commit: true)
306
- end
307
-
308
- # Return the collection's solr document with permissions added, such that...
309
- # * permissions identified by with_permission_template, if any, are added to the solr fields
310
- # @param [Collection] collection object being built/created by the factory
311
- # @param [Class] evaluator holding the transient properties for the current build/creation process
312
- # @returns the collection's solr document with permissions added
313
- def self.solr_document_with_permissions(collection, evaluator)
314
- collection.id ||= FactoryBot.generate(:object_id)
315
- collection.edit_users = user_managers(evaluator.with_permission_template, evaluator.user)
316
- collection.edit_groups = group_managers(evaluator.with_permission_template)
317
- collection.read_users = user_viewers(evaluator.with_permission_template) +
318
- user_depositors(evaluator.with_permission_template)
319
- collection.read_groups = group_viewers(evaluator.with_permission_template) +
320
- group_depositors(evaluator.with_permission_template)
321
- collection.to_solr
322
- end
323
- private_class_method :solr_document_with_permissions
324
- end
325
- end