sufia 6.2.0 → 6.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +146 -0
- data/.travis.yml +4 -7
- data/Gemfile +2 -0
- data/History.md +29 -1
- data/README.md +25 -9
- data/SUFIA_VERSION +1 -1
- data/app/assets/stylesheets/sufia/_collections.scss +15 -0
- data/app/assets/stylesheets/sufia/_file-listing.scss +7 -0
- data/app/assets/stylesheets/sufia/_home-page.scss +10 -0
- data/app/builders/sufia/bootstrap_breadcrumbs_builder.rb +3 -5
- data/app/controllers/admin/stats_controller.rb +1 -76
- data/app/controllers/api/items_controller.rb +4 -6
- data/app/controllers/api/zotero_controller.rb +5 -5
- data/app/controllers/authorities_controller.rb +5 -1
- data/app/controllers/batch_edits_controller.rb +3 -3
- data/app/controllers/concerns/sufia/admin/depositor_stats.rb +41 -0
- data/app/controllers/concerns/sufia/admin/stats_behavior.rb +94 -0
- data/app/controllers/concerns/sufia/batch_controller_behavior.rb +16 -18
- data/app/controllers/concerns/sufia/batch_edits_controller_behavior.rb +54 -56
- data/app/controllers/concerns/sufia/breadcrumbs.rb +3 -6
- data/app/controllers/concerns/sufia/collections_controller_behavior.rb +39 -39
- data/app/controllers/concerns/sufia/controller.rb +10 -10
- data/app/controllers/concerns/sufia/dashboard_controller_behavior.rb +17 -18
- data/app/controllers/concerns/sufia/depositors_controller_behavior.rb +9 -12
- data/app/controllers/concerns/sufia/files_controller/browse_everything.rb +6 -7
- data/app/controllers/concerns/sufia/files_controller/local_ingest_behavior.rb +39 -40
- data/app/controllers/concerns/sufia/files_controller/upload_complete_behavior.rb +1 -1
- data/app/controllers/concerns/sufia/files_controller_behavior.rb +109 -110
- data/app/controllers/concerns/sufia/homepage_controller.rb +8 -8
- data/app/controllers/concerns/sufia/my_controller_behavior.rb +13 -10
- data/app/controllers/concerns/sufia/single_use_links_controller_behavior.rb +11 -14
- data/app/controllers/concerns/sufia/single_use_links_viewer_controller_behavior.rb +27 -21
- data/app/controllers/concerns/sufia/transfers_controller_behavior.rb +17 -17
- data/app/controllers/concerns/sufia/users_controller_behavior.rb +54 -54
- data/app/controllers/contact_form_controller.rb +1 -1
- data/app/controllers/content_blocks_controller.rb +11 -12
- data/app/controllers/directory_controller.rb +2 -3
- data/app/controllers/featured_work_lists_controller.rb +1 -1
- data/app/controllers/featured_works_controller.rb +2 -4
- data/app/controllers/homepage_controller.rb +1 -2
- data/app/controllers/mailbox_controller.rb +12 -32
- data/app/controllers/my/collections_controller.rb +3 -4
- data/app/controllers/my/files_controller.rb +4 -6
- data/app/controllers/my/highlights_controller.rb +4 -6
- data/app/controllers/my/shares_controller.rb +3 -5
- data/app/controllers/pages_controller.rb +1 -3
- data/app/controllers/single_use_links_controller.rb +0 -1
- data/app/controllers/single_use_links_viewer_controller.rb +0 -1
- data/app/controllers/static_controller.rb +1 -0
- data/app/forms/sufia/forms/collection_edit_form.rb +2 -2
- data/app/helpers/batch_edits_helper.rb +1 -3
- data/app/helpers/content_block_helper.rb +7 -8
- data/app/helpers/generic_file_helper.rb +23 -24
- data/app/helpers/sufia/blacklight_override.rb +6 -7
- data/app/helpers/sufia/dashboard_helper_behavior.rb +4 -7
- data/app/helpers/sufia/permissions_helper.rb +3 -4
- data/app/helpers/sufia/sufia_helper_behavior.rb +30 -29
- data/app/helpers/trophy_helper.rb +15 -15
- data/app/inputs/select_with_modal_help_input.rb +3 -3
- data/app/inputs/with_help_icon.rb +4 -4
- data/app/jobs/content_delete_event_job.rb +0 -1
- data/app/jobs/content_depositor_change_event_job.rb +1 -2
- data/app/jobs/event_job.rb +0 -1
- data/app/jobs/user_unfollow_event_job.rb +1 -0
- data/app/models/concerns/sufia/solr_document_behavior.rb +1 -2
- data/app/models/contact_form.rb +6 -6
- data/app/models/content_block.rb +1 -2
- data/app/models/featured_work_list.rb +3 -5
- data/app/models/user_mailbox.rb +44 -0
- data/app/presenters/sufia/collection_presenter.rb +6 -8
- data/app/presenters/sufia/generic_file_presenter.rb +2 -2
- data/app/presenters/sufia/presenter_renderer.rb +2 -2
- data/app/presenters/sufia/version_list_presenter.rb +1 -1
- data/app/presenters/sufia/version_presenter.rb +3 -6
- data/app/search_builders/deposit_search_builder.rb +19 -0
- data/app/search_builders/sufia/my_search_builder_behavior.rb +1 -2
- data/app/search_builders/sufia/search_builder.rb +1 -3
- data/app/uploaders/tinymce_asset_uploader.rb +0 -2
- data/app/views/_controls.html.erb +5 -5
- data/app/views/admin/stats/_deposits.html.erb +19 -0
- data/app/views/admin/stats/index.html.erb +2 -0
- data/app/views/batch_edits/edit.html.erb +2 -2
- data/app/views/collections/_edit_actions.html.erb +3 -3
- data/app/views/collections/_form_for_select_collection.html.erb +2 -2
- data/app/views/collections/_sort_and_per_page.html.erb +12 -9
- data/app/views/collections/_view_type_group.html.erb +1 -1
- data/app/views/collections/edit.html.erb +5 -5
- data/app/views/collections/show.html.erb +7 -6
- data/app/views/homepage/_announcement.html.erb +5 -0
- data/app/views/homepage/_home.html.erb +1 -0
- data/app/views/my/_sort_and_per_page.html.erb +14 -10
- data/app/views/my/index.html.erb +1 -1
- data/app/views/pages/show.html.erb +0 -2
- data/app/views/single_use_links/new_download.html.erb +1 -1
- data/app/views/single_use_links_viewer/show.html.erb +1 -1
- data/app/views/users/_notify_link.html.erb +1 -1
- data/app/views/users/_notify_number.html.erb +2 -2
- data/config/initializers/simple_form.rb +1 -1
- data/config/initializers/simple_form_bootstrap.rb +1 -1
- data/config/locales/sufia.en.yml +4 -0
- data/config/routes.rb +2 -3
- data/lib/generators/sufia/admin_stat_generator.rb +0 -3
- data/lib/generators/sufia/install_generator.rb +8 -9
- data/lib/generators/sufia/templates/catalog_controller.rb +2 -3
- data/lib/generators/sufia/templates/config/action_dispatch_http_upload_monkey_patch.rb +1 -0
- data/lib/generators/sufia/upgrade400_generator.rb +9 -9
- data/lib/generators/sufia/upgrade600_generator.rb +1 -4
- data/lib/sufia.rb +2 -2
- data/lib/sufia/arkivo/actor.rb +1 -1
- data/lib/sufia/arkivo/create_subscription_job.rb +30 -30
- data/lib/sufia/arkivo/metadata_munger.rb +7 -7
- data/lib/sufia/arkivo/schema_validator.rb +1 -1
- data/lib/sufia/single_use_error.rb +0 -1
- data/lib/sufia/version.rb +1 -1
- data/lib/sufia/zotero/config.rb +13 -13
- data/spec/actors/generic_file/actor_spec.rb +17 -18
- data/spec/controllers/admin_stats_controller_spec.rb +56 -5
- data/spec/controllers/api/zotero_controller_spec.rb +10 -9
- data/spec/controllers/authorities_controller_spec.rb +8 -8
- data/spec/controllers/batch_controller_spec.rb +19 -20
- data/spec/controllers/batch_edits_controller_spec.rb +8 -9
- data/spec/controllers/catalog_controller_spec.rb +7 -9
- data/spec/controllers/collections_controller_spec.rb +30 -32
- data/spec/controllers/content_blocks_controller_spec.rb +4 -4
- data/spec/controllers/dashboard_controller_spec.rb +12 -12
- data/spec/controllers/depositors_controller_spec.rb +8 -8
- data/spec/controllers/downloads_controller_spec.rb +10 -11
- data/spec/controllers/featured_work_lists_controller_spec.rb +4 -4
- data/spec/controllers/featured_works_controller_spec.rb +11 -12
- data/spec/controllers/generic_files_controller_spec.rb +154 -125
- data/spec/controllers/homepage_controller_spec.rb +22 -15
- data/spec/controllers/mailbox_controller_spec.rb +20 -36
- data/spec/controllers/my/collections_controller_spec.rb +4 -5
- data/spec/controllers/my/files_controller_spec.rb +10 -11
- data/spec/controllers/my/highlights_controller_spec.rb +4 -5
- data/spec/controllers/my/shares_controller_spec.rb +12 -14
- data/spec/controllers/my_controller_spec.rb +1 -3
- data/spec/controllers/pages_controller_spec.rb +4 -4
- data/spec/controllers/single_use_links_controller_spec.rb +1 -3
- data/spec/controllers/single_use_links_viewer_controller_spec.rb +1 -2
- data/spec/controllers/static_controller_spec.rb +1 -1
- data/spec/controllers/tinymce_assets_controller_spec.rb +8 -9
- data/spec/controllers/transfers_controller_spec.rb +19 -19
- data/spec/controllers/users_controller_spec.rb +33 -35
- data/spec/factories/api_items.rb +2 -2
- data/spec/factories/content_blocks.rb +1 -1
- data/spec/factories/featured_works.rb +1 -1
- data/spec/factories/generic_files.rb +3 -3
- data/spec/factories/users.rb +7 -8
- data/spec/features/browse_dashboard_files_spec.rb +14 -18
- data/spec/features/browse_files_spec.rb +3 -4
- data/spec/features/catalog_search_spec.rb +3 -5
- data/spec/features/cloud_upload_spec.rb +2 -2
- data/spec/features/collection_spec.rb +21 -21
- data/spec/features/contact_form_spec.rb +10 -11
- data/spec/features/display_dashboard_spec.rb +5 -9
- data/spec/features/edit_file_spec.rb +8 -9
- data/spec/features/featured_item_spec.rb +1 -1
- data/spec/features/ingest_upload_files_spec.rb +5 -5
- data/spec/features/notifications_spec.rb +2 -6
- data/spec/features/ownership_transfer_spec.rb +2 -2
- data/spec/features/proxy_spec.rb +2 -2
- data/spec/features/search_spec.rb +3 -4
- data/spec/features/single_use_links_spec.rb +1 -1
- data/spec/features/users_spec.rb +4 -5
- data/spec/forms/collection_edit_form_spec.rb +2 -2
- data/spec/forms/generic_file_edit_form_spec.rb +6 -7
- data/spec/helpers/batch_edits_helper_spec.rb +9 -13
- data/spec/helpers/content_block_helper_spec.rb +3 -3
- data/spec/helpers/dashboard_helper_spec.rb +19 -24
- data/spec/helpers/generic_file_helper_spec.rb +5 -7
- data/spec/helpers/sufia_helper_spec.rb +43 -54
- data/spec/helpers/trophy_helper_spec.rb +5 -5
- data/spec/inputs/multi_value_with_help_input_spec.rb +1 -2
- data/spec/inputs/select_with_help_input_spec.rb +19 -15
- data/spec/javascripts/jasmine_spec.rb +4 -5
- data/spec/javascripts/support/jasmine_helper.rb +9 -9
- data/spec/jobs/active_fedora_id_based_job_spec.rb +7 -5
- data/spec/jobs/audit_job_spec.rb +7 -7
- data/spec/jobs/batch_update_job_spec.rb +5 -6
- data/spec/jobs/characterize_job_spec.rb +1 -1
- data/spec/jobs/content_depositor_change_event_job_spec.rb +1 -1
- data/spec/jobs/create_derivatives_job_spec.rb +5 -5
- data/spec/jobs/event_jobs_spec.rb +16 -16
- data/spec/jobs/import_url_job_spec.rb +36 -5
- data/spec/jobs/ingest_local_file_job_spec.rb +31 -20
- data/spec/jobs/sufia_resque_queue_spec.rb +1 -1
- data/spec/lib/sufia/analytics_spec.rb +0 -1
- data/spec/lib/sufia/arkivo/actor_spec.rb +6 -6
- data/spec/lib/sufia/arkivo/schema_validator_spec.rb +18 -18
- data/spec/lib/sufia/breadcrumbs_spec.rb +5 -6
- data/spec/lib/sufia/messages_spec.rb +11 -12
- data/spec/lib/sufia/readable_permissions_spec.rb +8 -10
- data/spec/lib/sufia/upload_complete_behavior_spec.rb +6 -7
- data/spec/lib/sufia/user_stat_importer_spec.rb +30 -33
- data/spec/lib/sufia/writable_permissions_spec.rb +1 -3
- data/spec/lib/sufia/zotero/config_spec.rb +4 -6
- data/spec/models/ability_spec.rb +11 -9
- data/spec/models/batch_spec.rb +13 -13
- data/spec/models/characterization_spec.rb +2 -3
- data/spec/models/checksum_audit_log_spec.rb +18 -19
- data/spec/models/collection_spec.rb +11 -12
- data/spec/models/content_block_spec.rb +33 -22
- data/spec/models/download_spec.rb +3 -5
- data/spec/models/featured_work_list_spec.rb +3 -3
- data/spec/models/featured_work_spec.rb +12 -14
- data/spec/models/file_content_datastream_spec.rb +9 -7
- data/spec/models/file_download_stat_spec.rb +34 -40
- data/spec/models/file_usage_spec.rb +46 -52
- data/spec/models/file_view_stat_spec.rb +35 -41
- data/spec/models/fits_datastream_spec.rb +23 -25
- data/spec/models/generic_file/visibility_spec.rb +10 -5
- data/spec/models/generic_file_spec.rb +86 -88
- data/spec/models/geo_names_resource_spec.rb +3 -5
- data/spec/models/local_authority_spec.rb +30 -33
- data/spec/models/pageview_spec.rb +3 -3
- data/spec/models/proxy_deposit_request_spec.rb +3 -3
- data/spec/models/single_use_link_spec.rb +36 -36
- data/spec/models/solr_document_spec.rb +3 -6
- data/spec/models/trophy_spec.rb +8 -9
- data/spec/models/user_mailbox_spec.rb +62 -0
- data/spec/models/user_spec.rb +28 -29
- data/spec/presenters/presenter_renderer_spec.rb +1 -1
- data/spec/presenters/sufia/generic_file_presenter_spec.rb +5 -5
- data/spec/presenters/sufia/version_list_presenter_spec.rb +2 -2
- data/spec/presenters/sufia/version_presenter_spec.rb +1 -1
- data/spec/routing/featured_works_route_spec.rb +4 -4
- data/spec/routing/ownership_transfers_route_spec.rb +1 -1
- data/spec/routing/route_spec.rb +89 -89
- data/spec/services/generic_file_audit_service_spec.rb +8 -8
- data/spec/services/repository_audit_service_spec.rb +7 -3
- data/spec/spec_helper.rb +5 -4
- data/spec/support/features/session_helpers.rb +1 -1
- data/spec/support/input_support.rb +1 -2
- data/spec/support/rake.rb +1 -1
- data/spec/support/selectors.rb +1 -6
- data/spec/support/statistic_helper.rb +1 -1
- data/spec/support/uploaded_file_monkeypatch.rb +1 -1
- data/spec/tasks/rake_spec.rb +3 -5
- data/spec/views/admin/stats/index.html.erb_spec.rb +16 -16
- data/spec/views/batch/edit.html.erb_spec.rb +1 -3
- data/spec/views/batch_edits/check_all_spec.rb +5 -5
- data/spec/views/batch_edits/edit.html.erb_spec.rb +1 -3
- data/spec/views/catalog/index.html.erb_spec.rb +1 -3
- data/spec/views/catalog/sort_and_per_page.html.erb_spec.rb +4 -5
- data/spec/views/collections/_form.html.erb_spec.rb +5 -3
- data/spec/views/collections/_show_descriptions.html.erb_spec.rb +7 -8
- data/spec/views/collections/_show_document_list.erb_spec.rb +4 -6
- data/spec/views/dashboard/index_spec.rb +14 -21
- data/spec/views/generic_file/_browse_everything.html.erb_spec.rb +2 -2
- data/spec/views/generic_file/_permission_form.html.erb_spec.rb +8 -9
- data/spec/views/generic_file/edit.html.erb_spec.rb +7 -7
- data/spec/views/generic_file/show.html.erb_spec.rb +24 -25
- data/spec/views/generic_file/stats.html.erb_spec.rb +19 -19
- data/spec/views/homepage/_announcement.html.erb_spec.rb +51 -0
- data/spec/views/homepage/_featured_works.html.erb_spec.rb +5 -9
- data/spec/views/homepage/_home_header.html.erb_spec.rb +2 -2
- data/spec/views/my/facet.html.erb_spec.rb +4 -4
- data/spec/views/single_use_links/new_download.html.erb_spec.rb +28 -0
- data/spec/views/single_use_links_viewer/show.html.erb_spec.rb +29 -0
- data/spec/views/users/_follower_modal.html.erb_spec.rb +7 -8
- data/spec/views/users/_following_modal.html.erb_spec.rb +4 -5
- data/spec/views/users/_notify_number.html.erb_spec.rb +2 -5
- data/spec/views/users/_user_util_links.html.erb_spec.rb +5 -8
- data/spec/views/users/index.html.erb_spec.rb +4 -6
- data/spec/views/users/show.html.erb_spec.rb +4 -7
- data/tasks/sufia-dev.rake +19 -3
- metadata +20 -5
|
@@ -4,7 +4,7 @@ describe 'searching' do
|
|
|
4
4
|
let!(:file) { FactoryGirl.create(:public_file, title: ["Toothbrush"]) }
|
|
5
5
|
|
|
6
6
|
context "as a public user" do
|
|
7
|
-
it "
|
|
7
|
+
it "finds the file and have a gallery" do
|
|
8
8
|
visit '/'
|
|
9
9
|
fill_in "search-field-header", with: "Toothbrush"
|
|
10
10
|
click_button "search-submit-header"
|
|
@@ -12,7 +12,7 @@ describe 'searching' do
|
|
|
12
12
|
within "#search-results" do
|
|
13
13
|
expect(page).to have_content "Toothbrush"
|
|
14
14
|
end
|
|
15
|
-
|
|
15
|
+
|
|
16
16
|
click_link "Gallery"
|
|
17
17
|
expect(page).to have_content "You searched for: Toothbrush"
|
|
18
18
|
within "#documents" do
|
|
@@ -20,7 +20,7 @@ describe 'searching' do
|
|
|
20
20
|
end
|
|
21
21
|
end
|
|
22
22
|
|
|
23
|
-
it "
|
|
23
|
+
it "does not display search options for dashboard files" do
|
|
24
24
|
visit "/"
|
|
25
25
|
within(".input-group-btn") do
|
|
26
26
|
expect(page).to_not have_content("My Files")
|
|
@@ -28,6 +28,5 @@ describe 'searching' do
|
|
|
28
28
|
expect(page).to_not have_content("My Shares")
|
|
29
29
|
end
|
|
30
30
|
end
|
|
31
|
-
|
|
32
31
|
end
|
|
33
32
|
end
|
data/spec/features/users_spec.rb
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
require 'spec_helper'
|
|
2
2
|
|
|
3
|
-
describe "User Profile", :
|
|
4
|
-
|
|
3
|
+
describe "User Profile", type: :feature do
|
|
5
4
|
before do
|
|
6
5
|
sign_in FactoryGirl.create(:curator)
|
|
7
6
|
end
|
|
8
7
|
|
|
9
8
|
context 'when visiting user profile' do
|
|
10
|
-
it '
|
|
9
|
+
it 'renders page properly' do
|
|
11
10
|
visit '/users/curator1@example-dot-com'
|
|
12
11
|
expect(page).to have_content('curator1@example.com')
|
|
13
12
|
expect(page).to have_content('Edit Your Profile')
|
|
@@ -15,7 +14,7 @@ describe "User Profile", :type => :feature do
|
|
|
15
14
|
end
|
|
16
15
|
|
|
17
16
|
context 'when clicking all users' do
|
|
18
|
-
it '
|
|
17
|
+
it 'displays all users' do
|
|
19
18
|
visit '/users/curator1@example-dot-com'
|
|
20
19
|
click_link 'View Users'
|
|
21
20
|
expect(page).to have_xpath("//td/a[@href='/users/curator1@example-dot-com']")
|
|
@@ -35,7 +34,7 @@ describe "User Profile", :type => :feature do
|
|
|
35
34
|
end
|
|
36
35
|
|
|
37
36
|
context 'user profile' do
|
|
38
|
-
it '
|
|
37
|
+
it 'is searchable' do
|
|
39
38
|
@archivist = FactoryGirl.find_or_create(:archivist)
|
|
40
39
|
visit '/users/curator1@example-dot-com'
|
|
41
40
|
click_link 'View Users'
|
|
@@ -5,7 +5,7 @@ describe Sufia::Forms::CollectionEditForm do
|
|
|
5
5
|
let(:form) { described_class.new(collection) }
|
|
6
6
|
|
|
7
7
|
describe "#terms" do
|
|
8
|
-
subject { form.terms}
|
|
8
|
+
subject { form.terms }
|
|
9
9
|
it { is_expected.to eq [:resource_type, :title, :creator, :contributor, :description,
|
|
10
10
|
:tag, :rights, :publisher, :date_created, :subject, :language,
|
|
11
11
|
:identifier, :based_near, :related_url] }
|
|
@@ -13,7 +13,7 @@ describe Sufia::Forms::CollectionEditForm do
|
|
|
13
13
|
|
|
14
14
|
describe "unique?" do
|
|
15
15
|
context "with :title" do
|
|
16
|
-
subject {
|
|
16
|
+
subject { described_class.unique?(:title) }
|
|
17
17
|
it { is_expected.to be true }
|
|
18
18
|
end
|
|
19
19
|
end
|
|
@@ -4,9 +4,9 @@ describe Sufia::Forms::GenericFileEditForm do
|
|
|
4
4
|
subject { described_class.new(GenericFile.new) }
|
|
5
5
|
|
|
6
6
|
describe "#terms" do
|
|
7
|
-
it "
|
|
7
|
+
it "returns a list" do
|
|
8
8
|
expect(subject.terms).to eq([:resource_type, :title, :creator, :contributor, :description, :tag,
|
|
9
|
-
|
|
9
|
+
:rights, :publisher, :date_created, :subject, :language, :identifier, :based_near, :related_url])
|
|
10
10
|
end
|
|
11
11
|
|
|
12
12
|
it "doesn't contain fields that users shouldn't be allowed to edit" do
|
|
@@ -15,19 +15,18 @@ describe Sufia::Forms::GenericFileEditForm do
|
|
|
15
15
|
end
|
|
16
16
|
end
|
|
17
17
|
|
|
18
|
-
it "
|
|
18
|
+
it "initializes multivalued fields" do
|
|
19
19
|
expect(subject.title).to eq ['']
|
|
20
20
|
end
|
|
21
21
|
|
|
22
22
|
describe ".model_attributes" do
|
|
23
|
-
let(:params) { ActionController::Parameters.new(title: ['foo'], description: [''], "permissions_attributes"=>{"2"=>{"access"=>"edit", "_destroy"=>"true", "id"=>"a987551e-b87f-427a-8721-3e5942273125"}})}
|
|
23
|
+
let(:params) { ActionController::Parameters.new(title: ['foo'], description: [''], "permissions_attributes" => { "2" => { "access" => "edit", "_destroy" => "true", "id" => "a987551e-b87f-427a-8721-3e5942273125" } }) }
|
|
24
24
|
subject { described_class.model_attributes(params) }
|
|
25
25
|
|
|
26
|
-
it "
|
|
26
|
+
it "onlies change title" do
|
|
27
27
|
expect(subject['title']).to eq ["foo"]
|
|
28
28
|
expect(subject['description']).to be_empty
|
|
29
|
-
expect(subject['permissions_attributes']).to eq("2" => {"access"=>"edit", "id"=>"a987551e-b87f-427a-8721-3e5942273125", "_destroy"=>"true"})
|
|
29
|
+
expect(subject['permissions_attributes']).to eq("2" => { "access" => "edit", "id" => "a987551e-b87f-427a-8721-3e5942273125", "_destroy" => "true" })
|
|
30
30
|
end
|
|
31
31
|
end
|
|
32
|
-
|
|
33
32
|
end
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
require 'spec_helper'
|
|
2
2
|
|
|
3
|
-
describe BatchEditsHelper, :
|
|
4
|
-
|
|
3
|
+
describe BatchEditsHelper, type: :helper do
|
|
5
4
|
describe "#render_check_all" do
|
|
6
|
-
|
|
7
5
|
before do
|
|
8
6
|
@document_list = ["doc1", "doc2"]
|
|
9
7
|
@batch_size_on_other_page = 1
|
|
@@ -11,34 +9,32 @@ describe BatchEditsHelper, :type => :helper do
|
|
|
11
9
|
end
|
|
12
10
|
|
|
13
11
|
context "with my files" do
|
|
14
|
-
it "
|
|
15
|
-
allow(helper).to receive(:params).and_return(
|
|
12
|
+
it "shows the check all dropdown" do
|
|
13
|
+
allow(helper).to receive(:params).and_return(controller: "my/files")
|
|
16
14
|
allow(helper).to receive(:controller_name).and_return("batch_edits")
|
|
17
15
|
expect(helper.render_check_all).to have_css("span.glyphicon-cog")
|
|
18
16
|
end
|
|
19
17
|
|
|
20
|
-
it "
|
|
21
|
-
allow(helper).to receive(:params).and_return(
|
|
18
|
+
it "shows my action menu for my controller" do
|
|
19
|
+
allow(helper).to receive(:params).and_return(controller: "my")
|
|
22
20
|
allow(helper).to receive(:controller_name).and_return("my")
|
|
23
21
|
expect(helper.render_check_all).not_to have_content("ABC")
|
|
24
22
|
end
|
|
25
23
|
end
|
|
26
24
|
|
|
27
25
|
context "with my collections" do
|
|
28
|
-
it "
|
|
29
|
-
allow(helper).to receive(:params).and_return(
|
|
26
|
+
it "does not show the check all dropdown" do
|
|
27
|
+
allow(helper).to receive(:params).and_return(controller: "my/collections")
|
|
30
28
|
expect(helper.render_check_all).to be_nil
|
|
31
29
|
end
|
|
32
30
|
end
|
|
33
31
|
|
|
34
32
|
context "with select all disabled" do
|
|
35
|
-
it "
|
|
36
|
-
allow(helper).to receive(:params).and_return(
|
|
33
|
+
it "does not show the check all dropdown" do
|
|
34
|
+
allow(helper).to receive(:params).and_return(controller: "foo")
|
|
37
35
|
assign(:disable_select_all, true)
|
|
38
36
|
expect(helper.render_check_all).to have_css("input[disabled=disabled]")
|
|
39
37
|
end
|
|
40
38
|
end
|
|
41
|
-
|
|
42
39
|
end
|
|
43
|
-
|
|
44
40
|
end
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
require 'spec_helper'
|
|
2
2
|
|
|
3
|
-
describe ContentBlockHelper, :
|
|
3
|
+
describe ContentBlockHelper, type: :helper do
|
|
4
4
|
let(:content_block) { FactoryGirl.create(:content_block, value: "<p>foo bar</p>") }
|
|
5
5
|
|
|
6
6
|
subject { helper.editable_content_block(content_block) }
|
|
@@ -12,7 +12,7 @@ describe ContentBlockHelper, :type => :helper do
|
|
|
12
12
|
end
|
|
13
13
|
let(:node) { Capybara::Node::Simple.new(subject) }
|
|
14
14
|
|
|
15
|
-
it "
|
|
15
|
+
it "shows the preview and the form" do
|
|
16
16
|
expect(node).to have_selector "button[data-target='#edit_content_block_1'][data-behavior='reveal-editor']"
|
|
17
17
|
expect(node).to have_selector "form#edit_content_block_1[action='#{sufia.content_block_path(content_block)}']"
|
|
18
18
|
expect(subject).to be_html_safe
|
|
@@ -33,7 +33,7 @@ describe ContentBlockHelper, :type => :helper do
|
|
|
33
33
|
before do
|
|
34
34
|
expect(helper).to receive(:can?).with(:update, content_block).and_return(false)
|
|
35
35
|
end
|
|
36
|
-
it "
|
|
36
|
+
it "shows the content" do
|
|
37
37
|
expect(subject).to eq '<p>foo bar</p>'
|
|
38
38
|
expect(subject).to be_html_safe
|
|
39
39
|
end
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
require 'spec_helper'
|
|
2
2
|
|
|
3
|
-
describe DashboardHelper, :
|
|
4
|
-
|
|
3
|
+
describe DashboardHelper, type: :helper do
|
|
5
4
|
describe "#render_recent_activity" do
|
|
6
5
|
context "when there is no activity" do
|
|
7
|
-
it "
|
|
6
|
+
it "returns a messages stating the user has no recent activity" do
|
|
8
7
|
assign(:activity, [])
|
|
9
8
|
expect(helper.render_recent_activity).to include("no recent activity")
|
|
10
9
|
end
|
|
@@ -13,7 +12,7 @@ describe DashboardHelper, :type => :helper do
|
|
|
13
12
|
|
|
14
13
|
describe "#render_recent_notifications" do
|
|
15
14
|
context "when there are no notifications" do
|
|
16
|
-
it "
|
|
15
|
+
it "returns a messages stating the user has no recent notifications" do
|
|
17
16
|
assign(:notifications, [])
|
|
18
17
|
expect(helper.render_recent_notifications).to include("no notifications")
|
|
19
18
|
end
|
|
@@ -21,35 +20,34 @@ describe DashboardHelper, :type => :helper do
|
|
|
21
20
|
end
|
|
22
21
|
|
|
23
22
|
describe "#on_the_dashboard?" do
|
|
24
|
-
it "
|
|
25
|
-
allow(helper).to receive(:params).and_return(
|
|
23
|
+
it "returns false for controllers that aren't a part of the dashboard" do
|
|
24
|
+
allow(helper).to receive(:params).and_return(controller: "foo")
|
|
26
25
|
expect(helper).to_not be_on_the_dashboard
|
|
27
26
|
end
|
|
28
27
|
|
|
29
|
-
it "
|
|
30
|
-
allow(helper).to receive(:params).and_return(
|
|
28
|
+
it "returns true for controllers that are part of the dashboard" do
|
|
29
|
+
allow(helper).to receive(:params).and_return(controller: "my/files")
|
|
31
30
|
expect(helper).to be_on_the_dashboard
|
|
32
|
-
allow(helper).to receive(:params).and_return(
|
|
31
|
+
allow(helper).to receive(:params).and_return(controller: "my/collections")
|
|
33
32
|
expect(helper).to be_on_the_dashboard
|
|
34
|
-
allow(helper).to receive(:params).and_return(
|
|
33
|
+
allow(helper).to receive(:params).and_return(controller: "my/highlights")
|
|
35
34
|
expect(helper).to be_on_the_dashboard
|
|
36
|
-
allow(helper).to receive(:params).and_return(
|
|
35
|
+
allow(helper).to receive(:params).and_return(controller: "my/shares")
|
|
37
36
|
expect(helper).to be_on_the_dashboard
|
|
38
37
|
end
|
|
39
38
|
end
|
|
40
39
|
|
|
41
40
|
describe "#on_my_files" do
|
|
42
|
-
it "
|
|
43
|
-
allow(helper).to receive(:params).and_return(
|
|
41
|
+
it "returns false when the controller isn't my files" do
|
|
42
|
+
allow(helper).to receive(:params).and_return(controller: "my/collections")
|
|
44
43
|
expect(helper).to_not be_on_my_files
|
|
45
44
|
end
|
|
46
|
-
it "
|
|
47
|
-
allow(helper).to receive(:params).and_return(
|
|
45
|
+
it "returns true when the controller is my files" do
|
|
46
|
+
allow(helper).to receive(:params).and_return(controller: "my/files")
|
|
48
47
|
expect(helper).to be_on_my_files
|
|
49
48
|
end
|
|
50
49
|
end
|
|
51
50
|
|
|
52
|
-
|
|
53
51
|
describe "#number_of_files" do
|
|
54
52
|
let(:conn) { ActiveFedora::SolrService.instance.conn }
|
|
55
53
|
let(:user1) { User.new(email: "abc@test") }
|
|
@@ -61,7 +59,6 @@ describe DashboardHelper, :type => :helper do
|
|
|
61
59
|
it "finds only 3 files" do
|
|
62
60
|
expect(helper.number_of_files(user1)).to eq(3)
|
|
63
61
|
end
|
|
64
|
-
|
|
65
62
|
end
|
|
66
63
|
|
|
67
64
|
describe "#number_of_collections" do
|
|
@@ -75,20 +72,18 @@ describe DashboardHelper, :type => :helper do
|
|
|
75
72
|
it "finds only 3 files" do
|
|
76
73
|
expect(helper.number_of_collections(user1)).to eq(3)
|
|
77
74
|
end
|
|
78
|
-
|
|
79
75
|
end
|
|
80
76
|
|
|
81
|
-
def create_models
|
|
77
|
+
def create_models(model, user1, user2)
|
|
82
78
|
# deposited by the first user
|
|
83
79
|
3.times do |t|
|
|
84
|
-
conn.add
|
|
85
|
-
|
|
80
|
+
conn.add id: "199#{t}", Solrizer.solr_name('depositor', :stored_searchable) => user1.user_key, "has_model_ssim" => [model],
|
|
81
|
+
Solrizer.solr_name('depositor', :symbol) => user1.user_key
|
|
86
82
|
end
|
|
87
83
|
|
|
88
84
|
# deposited by the second user, but editable by the first
|
|
89
|
-
conn.add
|
|
90
|
-
|
|
85
|
+
conn.add id: "1994", Solrizer.solr_name('depositor', :stored_searchable) => user2.user_key, "has_model_ssim" => [model],
|
|
86
|
+
Solrizer.solr_name('depositor', :symbol) => user2.user_key, "edit_access_person_ssim" => user1.user_key
|
|
91
87
|
conn.commit
|
|
92
88
|
end
|
|
93
|
-
|
|
94
89
|
end
|
|
@@ -1,33 +1,31 @@
|
|
|
1
1
|
require 'spec_helper'
|
|
2
2
|
|
|
3
3
|
describe GenericFileHelper do
|
|
4
|
-
|
|
5
4
|
describe "#render_collection_list" do
|
|
6
5
|
context "using a file that is part of a collection" do
|
|
7
|
-
|
|
8
6
|
let(:collection) do
|
|
9
7
|
mock_model(Collection, title: "Foo Collection")
|
|
10
8
|
end
|
|
11
9
|
|
|
12
10
|
let(:gf) do
|
|
13
|
-
mock_model(GenericFile,
|
|
11
|
+
mock_model(GenericFile, collections: [collection, collection])
|
|
14
12
|
end
|
|
15
13
|
|
|
16
14
|
let(:link) do
|
|
17
15
|
"<a href=\"/collections/#{collection.id}\">#{collection.title}</a>"
|
|
18
16
|
end
|
|
19
17
|
|
|
20
|
-
it "
|
|
21
|
-
expect(helper.render_collection_list(gf)).to eq("Is part of: " + [link,link].join(", "))
|
|
18
|
+
it "displays a comma-delimited list of collections" do
|
|
19
|
+
expect(helper.render_collection_list(gf)).to eq("Is part of: " + [link, link].join(", "))
|
|
22
20
|
end
|
|
23
21
|
end
|
|
24
22
|
|
|
25
23
|
context "using a file that is not part of a collection" do
|
|
26
24
|
let(:gf) do
|
|
27
|
-
mock_model(GenericFile,
|
|
25
|
+
mock_model(GenericFile, collections: [])
|
|
28
26
|
end
|
|
29
27
|
|
|
30
|
-
it "
|
|
28
|
+
it "renders nothing" do
|
|
31
29
|
expect(helper.render_collection_list(gf)).to be_nil
|
|
32
30
|
end
|
|
33
31
|
end
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
require 'spec_helper'
|
|
2
2
|
|
|
3
|
-
describe SufiaHelper, :
|
|
4
|
-
|
|
3
|
+
describe SufiaHelper, type: :helper do
|
|
5
4
|
describe "#link_to_facet_list" do
|
|
6
5
|
before do
|
|
7
6
|
allow(helper).to receive(:blacklight_config).and_return(CatalogController.blacklight_config)
|
|
@@ -10,9 +9,9 @@ describe SufiaHelper, :type => :helper do
|
|
|
10
9
|
context "with values" do
|
|
11
10
|
subject { helper.link_to_facet_list(['car', 'truck'], 'vehicle_type') }
|
|
12
11
|
|
|
13
|
-
it "
|
|
14
|
-
car_link = catalog_index_path(f: {'vehicle_type_sim' => ['car']})
|
|
15
|
-
truck_link = catalog_index_path(f: {'vehicle_type_sim' => ['truck']})
|
|
12
|
+
it "joins the values" do
|
|
13
|
+
car_link = catalog_index_path(f: { 'vehicle_type_sim' => ['car'] })
|
|
14
|
+
truck_link = catalog_index_path(f: { 'vehicle_type_sim' => ['truck'] })
|
|
16
15
|
expect(subject).to eq "<a href=\"#{car_link}\">car</a>, <a href=\"#{truck_link}\">truck</a>"
|
|
17
16
|
expect(subject).to be_html_safe
|
|
18
17
|
end
|
|
@@ -21,7 +20,7 @@ describe SufiaHelper, :type => :helper do
|
|
|
21
20
|
context "without values" do
|
|
22
21
|
subject { helper.link_to_facet_list([], 'vehicle_type') }
|
|
23
22
|
|
|
24
|
-
it "
|
|
23
|
+
it "shows the default text" do
|
|
25
24
|
expect(subject).to eq "No value entered"
|
|
26
25
|
end
|
|
27
26
|
end
|
|
@@ -30,36 +29,36 @@ describe SufiaHelper, :type => :helper do
|
|
|
30
29
|
describe "has_collection_search_parameters?" do
|
|
31
30
|
subject { helper }
|
|
32
31
|
context "when cq is set" do
|
|
33
|
-
before { allow(helper).to receive(:params).and_return(
|
|
32
|
+
before { allow(helper).to receive(:params).and_return(cq: 'foo') }
|
|
34
33
|
it { is_expected.to have_collection_search_parameters }
|
|
35
34
|
end
|
|
36
35
|
|
|
37
36
|
context "when cq is not set" do
|
|
38
|
-
before { allow(helper).to receive(:params).and_return(
|
|
37
|
+
before { allow(helper).to receive(:params).and_return(cq: '') }
|
|
39
38
|
it { is_expected.not_to have_collection_search_parameters }
|
|
40
39
|
end
|
|
41
40
|
end
|
|
42
41
|
|
|
43
42
|
describe "sufia_thumbnail_tag" do
|
|
44
43
|
context "for an image object" do
|
|
45
|
-
let(:document) { SolrDocument.new(
|
|
46
|
-
it "
|
|
47
|
-
rendered = helper.sufia_thumbnail_tag(document,
|
|
44
|
+
let(:document) { SolrDocument.new(mime_type_tesim: 'image/jpeg', id: '1234') }
|
|
45
|
+
it "shows the audio thumbnail" do
|
|
46
|
+
rendered = helper.sufia_thumbnail_tag(document, width: 90)
|
|
48
47
|
expect(rendered).to match(/src="\/downloads\/1234\?file=thumbnail"/)
|
|
49
48
|
expect(rendered).to match(/width="90"/)
|
|
50
49
|
end
|
|
51
50
|
end
|
|
52
51
|
context "for an audio object" do
|
|
53
|
-
let(:document) { SolrDocument.new(
|
|
54
|
-
it "
|
|
52
|
+
let(:document) { SolrDocument.new(mime_type_tesim: 'audio/x-wave', id: '1234') }
|
|
53
|
+
it "shows the audio thumbnail" do
|
|
55
54
|
rendered = helper.sufia_thumbnail_tag(document, {})
|
|
56
55
|
expect(rendered).to match(/src="\/assets\/audio.png"/)
|
|
57
56
|
end
|
|
58
57
|
end
|
|
59
58
|
context "for an document object" do
|
|
60
|
-
let(:document) { SolrDocument.new(
|
|
61
|
-
it "
|
|
62
|
-
rendered = helper.sufia_thumbnail_tag(document,
|
|
59
|
+
let(:document) { SolrDocument.new(mime_type_tesim: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', id: '1234') }
|
|
60
|
+
it "shows the default thumbnail" do
|
|
61
|
+
rendered = helper.sufia_thumbnail_tag(document, width: 90)
|
|
63
62
|
expect(rendered).to match(/src="\/downloads\/1234\?file=thumbnail"/)
|
|
64
63
|
expect(rendered).to match(/width="90"/)
|
|
65
64
|
end
|
|
@@ -67,101 +66,93 @@ describe SufiaHelper, :type => :helper do
|
|
|
67
66
|
end
|
|
68
67
|
|
|
69
68
|
describe "#link_to_telephone" do
|
|
70
|
-
|
|
71
69
|
before do
|
|
72
70
|
@user = mock_model(User)
|
|
73
71
|
allow(@user).to receive(:telephone).and_return('867-5309')
|
|
74
72
|
end
|
|
75
73
|
|
|
76
74
|
context "when @user is set" do
|
|
77
|
-
it "
|
|
75
|
+
it "returns a link to the user's telephone" do
|
|
78
76
|
expect(helper.link_to_telephone).to eq("<a href=\"wtai://wp/mc;867-5309\">867-5309</a>")
|
|
79
77
|
end
|
|
80
78
|
end
|
|
81
79
|
|
|
82
80
|
context "when @user is not set" do
|
|
83
|
-
it "
|
|
81
|
+
it "returns a link to the user's telephone" do
|
|
84
82
|
expect(helper.link_to_telephone(@user)).to eq("<a href=\"wtai://wp/mc;867-5309\">867-5309</a>")
|
|
85
83
|
end
|
|
86
84
|
end
|
|
87
|
-
|
|
88
85
|
end
|
|
89
86
|
|
|
90
87
|
describe "#current_search_parameters" do
|
|
91
|
-
|
|
92
88
|
context "when the user is not in the dashboard" do
|
|
93
|
-
it "
|
|
94
|
-
allow(helper).to receive(:params).and_return(
|
|
89
|
+
it "is whatever q is" do
|
|
90
|
+
allow(helper).to receive(:params).and_return(controller: "catalog", q: "foo")
|
|
95
91
|
expect(helper.current_search_parameters).to eq("foo")
|
|
96
92
|
end
|
|
97
93
|
end
|
|
98
94
|
|
|
99
95
|
context "when the user is on any dashboard page" do
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
allow(helper).to receive(:params).and_return({ controller: "dashboard", q: "foo" })
|
|
96
|
+
it "is ignored on dashboard" do
|
|
97
|
+
allow(helper).to receive(:params).and_return(controller: "dashboard", q: "foo")
|
|
103
98
|
expect(helper.current_search_parameters).to be_nil
|
|
104
99
|
end
|
|
105
100
|
|
|
106
|
-
it "
|
|
107
|
-
allow(helper).to receive(:params).and_return(
|
|
101
|
+
it "is ignored on dashboard files, collections, highlights and shares" do
|
|
102
|
+
allow(helper).to receive(:params).and_return(controller: "my/files", q: "foo")
|
|
108
103
|
expect(helper.current_search_parameters).to be_nil
|
|
109
|
-
allow(helper).to receive(:params).and_return(
|
|
104
|
+
allow(helper).to receive(:params).and_return(controller: "my/collections", q: "foo")
|
|
110
105
|
expect(helper.current_search_parameters).to be_nil
|
|
111
|
-
allow(helper).to receive(:params).and_return(
|
|
106
|
+
allow(helper).to receive(:params).and_return(controller: "my/highlights", q: "foo")
|
|
112
107
|
expect(helper.current_search_parameters).to be_nil
|
|
113
|
-
allow(helper).to receive(:params).and_return(
|
|
108
|
+
allow(helper).to receive(:params).and_return(controller: "my/shares", q: "foo")
|
|
114
109
|
expect(helper.current_search_parameters).to be_nil
|
|
115
110
|
end
|
|
116
|
-
|
|
117
111
|
end
|
|
118
|
-
|
|
119
112
|
end
|
|
120
113
|
|
|
121
114
|
describe "#search_form_action" do
|
|
122
|
-
|
|
123
115
|
context "when the user is not in the dashboard" do
|
|
124
|
-
it "
|
|
125
|
-
allow(helper).to receive(:params).and_return(
|
|
116
|
+
it "returns the catalog index path" do
|
|
117
|
+
allow(helper).to receive(:params).and_return(controller: "foo")
|
|
126
118
|
expect(helper.search_form_action).to eq(catalog_index_path)
|
|
127
119
|
end
|
|
128
120
|
end
|
|
129
121
|
|
|
130
122
|
context "when the user is on the dashboard page" do
|
|
131
|
-
it "
|
|
132
|
-
allow(helper).to receive(:params).and_return(
|
|
123
|
+
it "defaults to My Files" do
|
|
124
|
+
allow(helper).to receive(:params).and_return(controller: "dashboard")
|
|
133
125
|
expect(helper.search_form_action).to eq(sufia.dashboard_files_path)
|
|
134
126
|
end
|
|
135
127
|
end
|
|
136
128
|
|
|
137
129
|
context "when the user is on the my files page" do
|
|
138
|
-
it "
|
|
139
|
-
allow(helper).to receive(:params).and_return(
|
|
130
|
+
it "returns the my dashboard files path" do
|
|
131
|
+
allow(helper).to receive(:params).and_return(controller: "my/files")
|
|
140
132
|
expect(helper.search_form_action).to eq(sufia.dashboard_files_path)
|
|
141
133
|
end
|
|
142
134
|
end
|
|
143
135
|
|
|
144
136
|
context "when the user is on the my collections page" do
|
|
145
|
-
it "
|
|
146
|
-
allow(helper).to receive(:params).and_return(
|
|
137
|
+
it "returns the my dashboard collections path" do
|
|
138
|
+
allow(helper).to receive(:params).and_return(controller: "my/collections")
|
|
147
139
|
expect(helper.search_form_action).to eq(sufia.dashboard_collections_path)
|
|
148
140
|
end
|
|
149
141
|
end
|
|
150
142
|
|
|
151
143
|
context "when the user is on the my highlights page" do
|
|
152
|
-
it "
|
|
153
|
-
allow(helper).to receive(:params).and_return(
|
|
144
|
+
it "returns the my dashboard highlights path" do
|
|
145
|
+
allow(helper).to receive(:params).and_return(controller: "my/highlights")
|
|
154
146
|
expect(helper.search_form_action).to eq(sufia.dashboard_highlights_path)
|
|
155
147
|
end
|
|
156
148
|
end
|
|
157
149
|
|
|
158
150
|
context "when the user is on the my shares page" do
|
|
159
|
-
it "
|
|
160
|
-
allow(helper).to receive(:params).and_return(
|
|
151
|
+
it "returns the my dashboard shares path" do
|
|
152
|
+
allow(helper).to receive(:params).and_return(controller: "my/shares")
|
|
161
153
|
expect(helper.search_form_action).to eq(sufia.dashboard_shares_path)
|
|
162
154
|
end
|
|
163
155
|
end
|
|
164
|
-
|
|
165
156
|
end
|
|
166
157
|
|
|
167
158
|
describe '#zotero_label' do
|
|
@@ -182,19 +173,17 @@ describe SufiaHelper, :type => :helper do
|
|
|
182
173
|
expect(helper.number_of_deposits(user1)).to eq(3)
|
|
183
174
|
end
|
|
184
175
|
|
|
185
|
-
def create_models
|
|
176
|
+
def create_models(model, user1, user2)
|
|
186
177
|
# deposited by the first user
|
|
187
178
|
3.times do |t|
|
|
188
|
-
conn.add
|
|
189
|
-
|
|
179
|
+
conn.add id: "199#{t}", Solrizer.solr_name('depositor', :stored_searchable) => user1.user_key, "has_model_ssim" => [model],
|
|
180
|
+
Solrizer.solr_name('depositor', :symbol) => user1.user_key
|
|
190
181
|
end
|
|
191
182
|
|
|
192
183
|
# deposited by the second user, but editable by the first
|
|
193
|
-
conn.add
|
|
194
|
-
|
|
184
|
+
conn.add id: "1994", Solrizer.solr_name('depositor', :stored_searchable) => user2.user_key, "has_model_ssim" => [model],
|
|
185
|
+
Solrizer.solr_name('depositor', :symbol) => user2.user_key, "edit_access_person_ssim" => user1.user_key
|
|
195
186
|
conn.commit
|
|
196
187
|
end
|
|
197
|
-
|
|
198
188
|
end
|
|
199
|
-
|
|
200
189
|
end
|