enju_loc 0.2.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/MIT-LICENSE +0 -0
- data/README.md +15 -0
- data/Rakefile +1 -1
- data/app/assets/config/enju_loc_manifest.js +0 -0
- data/app/controllers/loc_search_controller.rb +8 -9
- data/app/helpers/loc_search_helper.rb +2 -2
- data/app/models/loc_search.rb +23 -23
- data/lib/enju_loc/loc_search.rb +344 -330
- data/lib/enju_loc/version.rb +1 -1
- data/spec/cassette_library/LocSearch/_ModsRecord/should_parse_MODS_metadata.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_create_a_valid_manifestation.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_create_lcsh_subjects_only.yml +17 -16
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_create_multiple_series_statements.yml +10 -10
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_distinguish_title_information_with_subject.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_a_manifestation_that_has_invalid_classification.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_another_serial.yml +33 -29
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_audio_book.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_e-resource.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_e-resource_packaged_.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_extent.yml +17 -16
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_lccn_exact_math.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_notated_music.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_note_fields.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_publication_year.yml +26 -21
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_serial.yml +30 -29
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_import_video_publication.yml +7 -7
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_parse_title_information_properly.yml +20 -19
- data/spec/cassette_library/LocSearch/_import_from_sru_response/should_support_name_and_title_subjects.yml +7 -7
- data/spec/cassette_library/LocSearch/_search/should_return_a_search_result.yml +189 -184
- data/spec/cassette_library/LocSearchController/GET_index/should_get_index.yml +189 -184
- data/spec/cassette_library/LocSearchController/GET_index/should_get_index_with_page_parameter.yml +177 -171
- data/spec/cassette_library/LocSearchController/POST_create/should_create_a_bibliographic_record_if_lccn_is_set.yml +19 -22
- data/spec/cassette_library/LocSearchController/POST_create/should_not_create_a_bibliographic_record_if_lccn_is_not_set.yml +5 -5
- data/spec/cassette_library/loc_search/index/loc_search_menu/should_reflect_query_params_for_views.yml +140 -155
- data/spec/controllers/loc_search_controller_spec.rb +16 -16
- data/spec/dummy/app/models/application_record.rb +3 -0
- data/spec/dummy/bin/rails +1 -1
- data/spec/dummy/bin/setup +21 -12
- data/spec/dummy/bin/update +29 -0
- data/spec/dummy/bin/yarn +11 -0
- data/spec/dummy/config/application.rb +5 -17
- data/spec/dummy/config/cable.yml +10 -0
- data/spec/dummy/config/database.yml +17 -22
- data/spec/dummy/config/environment.rb +1 -1
- data/spec/dummy/config/environments/development.rb +24 -11
- data/spec/dummy/config/environments/production.rb +28 -16
- data/spec/dummy/config/environments/test.rb +6 -8
- data/spec/dummy/config/initializers/application_controller_renderer.rb +8 -0
- data/spec/dummy/config/initializers/assets.rb +14 -0
- data/spec/dummy/config/initializers/cookies_serializer.rb +5 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +2 -2
- data/spec/dummy/config/puma.rb +56 -0
- data/spec/dummy/config/secrets.yml +15 -5
- data/spec/dummy/config/spring.rb +6 -0
- data/spec/dummy/config/sunspot.yml +23 -0
- data/spec/dummy/db/migrate/001_create_agents.rb +7 -7
- data/spec/dummy/db/migrate/002_devise_create_users.rb +1 -1
- data/spec/dummy/db/migrate/005_create_manifestations.rb +10 -10
- data/spec/dummy/db/migrate/006_create_items.rb +6 -6
- data/spec/dummy/db/migrate/012_create_owns.rb +3 -3
- data/spec/dummy/db/migrate/015_create_creates.rb +3 -3
- data/spec/dummy/db/migrate/029_create_subjects.rb +1 -1
- data/spec/dummy/db/migrate/041_create_roles.rb +1 -1
- data/spec/dummy/db/migrate/047_create_produces.rb +3 -3
- data/spec/dummy/db/migrate/059_create_libraries.rb +8 -10
- data/spec/dummy/db/migrate/069_create_shelves.rb +4 -5
- data/spec/dummy/db/migrate/073_create_carrier_types.rb +2 -2
- data/spec/dummy/db/migrate/077_create_user_groups.rb +2 -2
- data/spec/dummy/db/migrate/080_create_library_groups.rb +3 -4
- data/spec/dummy/db/migrate/112_create_frequencies.rb +2 -2
- data/spec/dummy/db/migrate/117_create_form_of_works.rb +2 -2
- data/spec/dummy/db/migrate/120_create_baskets.rb +3 -4
- data/spec/dummy/db/migrate/124_create_bookstores.rb +2 -2
- data/spec/dummy/db/migrate/125_create_donates.rb +3 -3
- data/spec/dummy/db/migrate/130_create_request_status_types.rb +2 -2
- data/spec/dummy/db/migrate/131_create_request_types.rb +2 -2
- data/spec/dummy/db/migrate/133_create_agent_merges.rb +2 -2
- data/spec/dummy/db/migrate/134_create_agent_merge_lists.rb +1 -1
- data/spec/dummy/db/migrate/142_create_classifications.rb +1 -1
- data/spec/dummy/db/migrate/144_create_classification_types.rb +1 -1
- data/spec/dummy/db/migrate/145_create_subject_heading_types.rb +1 -1
- data/spec/dummy/db/migrate/146_create_subject_types.rb +1 -1
- data/spec/dummy/db/migrate/149_create_message_templates.rb +1 -1
- data/spec/dummy/db/migrate/154_create_messages.rb +1 -1
- data/spec/dummy/db/migrate/20080819181903_create_message_requests.rb +1 -1
- data/spec/dummy/db/migrate/20080830154109_create_realizes.rb +3 -3
- data/spec/dummy/db/migrate/20080830172106_create_exemplifies.rb +1 -1
- data/spec/dummy/db/migrate/20080905191442_create_agent_types.rb +2 -2
- data/spec/dummy/db/migrate/20081006090811_create_subscriptions.rb +5 -8
- data/spec/dummy/db/migrate/20081006093246_create_subscribes.rb +5 -6
- data/spec/dummy/db/migrate/20081023092436_create_search_engines.rb +6 -6
- data/spec/dummy/db/migrate/20081025083323_create_countries.rb +5 -5
- data/spec/dummy/db/migrate/20081025083905_create_languages.rb +6 -6
- data/spec/dummy/db/migrate/20081027150907_create_picture_files.rb +2 -2
- data/spec/dummy/db/migrate/20081028083142_create_agent_import_files.rb +1 -1
- data/spec/dummy/db/migrate/20081028083208_create_resource_import_files.rb +1 -1
- data/spec/dummy/db/migrate/20090705133942_add_attachments_picture_to_picture_file.rb +1 -1
- data/spec/dummy/db/migrate/20090705212043_add_attachments_attachment_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20090719201843_create_extents.rb +1 -1
- data/spec/dummy/db/migrate/20090720091106_create_medium_of_performances.rb +2 -2
- data/spec/dummy/db/migrate/20090720091429_create_content_types.rb +2 -2
- data/spec/dummy/db/migrate/20090812151902_create_agent_relationship_types.rb +2 -2
- data/spec/dummy/db/migrate/20091012101112_add_dcndl_schema.rb +1 -1
- data/spec/dummy/db/migrate/20091025080447_create_licenses.rb +2 -2
- data/spec/dummy/db/migrate/20091202124834_create_versions.rb +1 -1
- data/spec/dummy/db/migrate/20091214131723_create_series_statements.rb +1 -1
- data/spec/dummy/db/migrate/20100129142347_create_import_requests.rb +1 -1
- data/spec/dummy/db/migrate/20100211105551_add_admin_networks_to_library_group.rb +1 -1
- data/spec/dummy/db/migrate/20100223121519_rename_series_statement_title_to_original_title.rb +1 -1
- data/spec/dummy/db/migrate/20100314190054_add_opening_hour_to_library.rb +1 -1
- data/spec/dummy/db/migrate/20100321235924_add_series_statement_identifier_to_series_statement.rb +1 -1
- data/spec/dummy/db/migrate/20100525124311_create_manifestation_relationships.rb +1 -1
- data/spec/dummy/db/migrate/20100606065209_create_user_has_roles.rb +1 -1
- data/spec/dummy/db/migrate/20100606073747_create_agent_relationships.rb +1 -1
- data/spec/dummy/db/migrate/20100607044753_create_manifestation_relationship_types.rb +2 -2
- data/spec/dummy/db/migrate/20100814091104_add_position_to_agent_relationship.rb +1 -1
- data/spec/dummy/db/migrate/20100925043847_create_resource_import_results.rb +1 -1
- data/spec/dummy/db/migrate/20100925074559_create_agent_import_results.rb +1 -1
- data/spec/dummy/db/migrate/20101212070145_add_acquired_at_to_item.rb +1 -1
- data/spec/dummy/db/migrate/20110222073537_add_url_to_library_group.rb +2 -2
- data/spec/dummy/db/migrate/20110301035123_add_pub_date_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20110301121550_add_birth_date_and_death_date_to_agent.rb +1 -1
- data/spec/dummy/db/migrate/20110318183304_add_valid_period_for_new_user_to_user_group.rb +2 -2
- data/spec/dummy/db/migrate/20110603184217_add_edit_mode_to_resource_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20110619064807_add_edition_string_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20110620173525_add_bookstore_id_to_item.rb +1 -1
- data/spec/dummy/db/migrate/20110627034940_create_series_statement_merge_lists.rb +1 -1
- data/spec/dummy/db/migrate/20110627035057_create_series_statement_merges.rb +3 -3
- data/spec/dummy/db/migrate/20110913115320_add_lft_and_rgt_to_message.rb +1 -1
- data/spec/dummy/db/migrate/20110913120629_add_lft_and_rgt_to_classification.rb +1 -1
- data/spec/dummy/db/migrate/20110916091020_add_volume_number_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20110916103953_add_manifestaiton_id_to_series_statement.rb +1 -1
- data/spec/dummy/db/migrate/20110918162329_add_note_to_series_statement.rb +1 -1
- data/spec/dummy/db/migrate/20111124110059_create_create_types.rb +1 -1
- data/spec/dummy/db/migrate/20111124110319_create_realize_types.rb +1 -1
- data/spec/dummy/db/migrate/20111124110355_create_produce_types.rb +1 -1
- data/spec/dummy/db/migrate/20111124112131_add_create_type_to_create.rb +1 -1
- data/spec/dummy/db/migrate/20120105074911_add_isil_to_library.rb +1 -1
- data/spec/dummy/db/migrate/20120125050502_add_depth_to_message.rb +1 -1
- data/spec/dummy/db/migrate/20120125152919_add_title_subseries_transcription_to_series_statement.rb +1 -1
- data/spec/dummy/db/migrate/20120129014038_create_budget_types.rb +1 -1
- data/spec/dummy/db/migrate/20120129020544_add_budget_type_id_to_item.rb +1 -1
- data/spec/dummy/db/migrate/20120319120638_add_content_type_id_to_manifestation.rb +2 -2
- data/spec/dummy/db/migrate/20120319173203_create_accepts.rb +4 -7
- data/spec/dummy/db/migrate/20120406020752_add_url_to_subject.rb +1 -1
- data/spec/dummy/db/migrate/20120410104851_add_year_of_publication_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20120413072700_add_picture_meta_to_picture_file.rb +1 -1
- data/spec/dummy/db/migrate/20120413100352_add_fingerprint_to_picture_file.rb +1 -1
- data/spec/dummy/db/migrate/20120413161340_add_fingerprint_to_resource_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20120413161403_add_fingerprint_to_agent_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20120413170705_add_error_message_to_resource_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20120413170720_add_error_message_to_agent_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20120415164821_add_attachment_meta_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20120418081407_add_month_of_publication_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20120510140958_add_closed_to_shelf.rb +2 -2
- data/spec/dummy/db/migrate/20120511072422_add_agent_identifier_to_agent.rb +1 -1
- data/spec/dummy/db/migrate/20120602141129_add_edit_mode_to_agent_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20121116031206_add_fulltext_content_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20130221154434_add_additional_attributes_to_user.rb +1 -1
- data/spec/dummy/db/migrate/20130412083556_add_latitude_and_longitude_to_library.rb +1 -1
- data/spec/dummy/db/migrate/20130421093852_add_periodical_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20130421155019_add_creator_string_to_series_statement.rb +1 -1
- data/spec/dummy/db/migrate/20130421164124_add_series_master_to_series_statement.rb +1 -1
- data/spec/dummy/db/migrate/20130429020822_add_root_manifestation_id_to_series_statement.rb +1 -1
- data/spec/dummy/db/migrate/20130504133816_add_manifestation_id_to_subject.rb +1 -1
- data/spec/dummy/db/migrate/20130504143515_add_manifestation_id_to_classification.rb +1 -1
- data/spec/dummy/db/migrate/20130504195916_add_subject_heading_type_id_to_subject.rb +1 -1
- data/spec/dummy/db/migrate/20130506175303_create_identifier_types.rb +1 -1
- data/spec/dummy/db/migrate/20130506175834_create_identifiers.rb +3 -3
- data/spec/dummy/db/migrate/20130509185724_add_statement_of_responsibility_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20140110122216_create_user_import_files.rb +2 -2
- data/spec/dummy/db/migrate/20140110131010_create_user_import_results.rb +3 -3
- data/spec/dummy/db/migrate/20140122054321_create_profiles.rb +1 -1
- data/spec/dummy/db/migrate/20140518111006_create_message_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20140518135713_create_message_request_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20140519170214_create_resource_import_file_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20140519171220_create_import_request_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20140524020735_create_agent_import_file_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20140524074813_create_user_import_file_transitions.rb +2 -3
- data/spec/dummy/db/migrate/20140610123439_drop_email_unique_constraint_enju_leaf_rc10.rb +1 -1
- data/spec/dummy/db/migrate/20140614065404_create_resource_export_files.rb +1 -1
- data/spec/dummy/db/migrate/20140614141500_create_resource_export_file_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20140628072217_add_user_encoding_to_user_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20140628073524_add_user_encoding_to_agent_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20140628073535_add_user_encoding_to_resource_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20140709113413_create_user_export_files.rb +2 -2
- data/spec/dummy/db/migrate/20140709113905_create_user_export_file_transitions.rb +2 -2
- data/spec/dummy/db/migrate/20140720140916_add_binding_item_identifier_to_item.rb +1 -1
- data/spec/dummy/db/migrate/20140720170714_add_default_library_id_to_user_import_file.rb +2 -2
- data/spec/dummy/db/migrate/20140720170735_add_default_user_group_id_to_user_import_file.rb +2 -2
- data/spec/dummy/db/migrate/20140721151416_add_default_shelf_id_to_resource_import_file.rb +1 -1
- data/spec/dummy/db/migrate/20140802082007_add_manifestation_id_to_item.rb +1 -1
- data/spec/dummy/db/migrate/20140811031145_add_expired_at_to_profile.rb +1 -1
- data/spec/dummy/db/migrate/20140813182425_add_publication_place_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20140817155043_add_extent_of_text_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20140821151023_create_colors.rb +2 -4
- data/spec/dummy/db/migrate/20140822114527_add_error_message_to_resource_import_result.rb +1 -1
- data/spec/dummy/db/migrate/20140823083524_add_extent_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20140823094847_add_dimensions_to_manifestation.rb +1 -1
- data/spec/dummy/db/migrate/20140823095740_rename_manifestation_periodical_to_serial.rb +1 -1
- data/spec/dummy/db/migrate/20141003181336_add_full_name_transcription_to_profile.rb +1 -1
- data/spec/dummy/db/migrate/20141003182825_add_date_of_birth_to_profile.rb +1 -1
- data/spec/dummy/db/migrate/20150117111136_add_foreign_key_to_items_referencing_manifestations.rb +1 -1
- data/spec/dummy/db/migrate/20150221063719_add_settings_to_library_group.rb +1 -1
- data/spec/dummy/db/migrate/20150506105356_add_error_message_to_user_import_result.rb +1 -1
- data/spec/dummy/db/migrate/20150924115059_create_withdraws.rb +4 -6
- data/spec/dummy/db/migrate/20151125004028_add_profile_id_to_agent.rb +1 -1
- data/spec/dummy/db/migrate/20151213070943_add_translation_table_to_library_group.rb +12 -7
- data/spec/dummy/db/migrate/20151213072705_add_footer_banner_to_library_group.rb +16 -3
- data/spec/dummy/db/migrate/20160610093229_add_html_snippet_to_library_group.rb +1 -1
- data/spec/dummy/db/migrate/20160627232219_add_most_recent_to_user_import_file_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20160627232316_add_most_recent_to_user_export_file_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20160703185015_add_most_recent_to_message_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20160801080612_add_most_recent_to_import_request_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20160801080619_add_most_recent_to_resource_import_file_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20160801080637_add_most_recent_to_resource_export_file_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20160801080643_add_most_recent_to_agent_import_file_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20160811102604_add_picture_width_to_picture_file.rb +1 -1
- data/spec/dummy/db/migrate/20160813191647_add_max_number_of_results_to_library_group.rb +1 -1
- data/spec/dummy/db/migrate/20160813191733_add_family_name_first_to_library_group.rb +1 -1
- data/spec/dummy/db/migrate/20160813192542_add_pub_year_facet_range_interval_to_library_group.rb +1 -1
- data/spec/dummy/db/migrate/20160813203039_add_user_id_to_library_group.rb +1 -1
- data/spec/dummy/db/migrate/20160814165332_add_most_recent_to_message_request_transitions.rb +1 -1
- data/spec/dummy/db/migrate/20160820004638_add_attachment_attachment_to_carrier_types.rb +1 -1
- data/spec/dummy/db/migrate/20170305064014_add_csv_charset_conversion_to_library_group.rb +5 -0
- data/spec/dummy/db/migrate/20171014084528_add_header_logo_to_library_group.rb +5 -0
- data/spec/dummy/db/migrate/20171119051258_set_not_null_to_manifestation_id_on_items.rb +5 -0
- data/spec/dummy/db/migrate/20171126133835_rename_login_banner_to_old_login_banner.rb +5 -0
- data/spec/dummy/db/migrate/20171126135238_add_foreign_key_to_library_group_id_on_library.rb +5 -0
- data/spec/dummy/db/migrate/20180102162311_add_header_logo_meta_to_library_group.rb +5 -0
- data/spec/dummy/db/migrate/20180107160726_add_constraints_to_most_recent_for_user_import_file_transitions.rb +13 -0
- data/spec/dummy/db/migrate/20180107160740_add_constraints_to_most_recent_for_user_export_file_transitions.rb +13 -0
- data/spec/dummy/db/migrate/20180107161311_add_constraints_to_most_recent_for_agent_import_file_transitions.rb +13 -0
- data/spec/dummy/db/migrate/20180107161331_add_constraints_to_most_recent_for_resource_import_file_transitions.rb +13 -0
- data/spec/dummy/db/migrate/20180107161347_add_constraints_to_most_recent_for_resource_export_file_transitions.rb +13 -0
- data/spec/dummy/db/migrate/20180107161410_add_constraints_to_most_recent_for_import_request_transitions.rb +13 -0
- data/spec/dummy/db/migrate/20190713114940_add_profile_id_to_user.rb +5 -0
- data/spec/dummy/db/migrate/20190713115451_add_full_name_translations_to_profile.rb +5 -0
- data/spec/dummy/db/migrate/20190818075603_add_memo_to_manifestation.rb +5 -0
- data/spec/dummy/db/migrate/20190818075628_add_memo_to_item.rb +5 -0
- data/spec/dummy/db/migrate/20191219122214_create_custom_properties.rb +12 -0
- data/spec/dummy/db/schema.rb +688 -692
- data/spec/models/loc_search_spec.rb +143 -143
- data/spec/rails_helper.rb +1 -4
- metadata +321 -251
- data/README.rdoc +0 -11
@@ -4,219 +4,219 @@ describe LocSearch do
|
|
4
4
|
fixtures :all
|
5
5
|
|
6
6
|
context ".import_from_sru_response" do
|
7
|
-
it "should create a valid manifestation", :
|
8
|
-
manifestation = LocSearch.import_from_sru_response(
|
9
|
-
expect(
|
10
|
-
expect(
|
11
|
-
expect(
|
12
|
-
expect(
|
13
|
-
expect(
|
14
|
-
expect(
|
15
|
-
expect(
|
16
|
-
expect(
|
17
|
-
expect(
|
18
|
-
expect(
|
19
|
-
expect(
|
20
|
-
expect(
|
21
|
-
expect(
|
22
|
-
expect(
|
23
|
-
expect(
|
24
|
-
expect(
|
25
|
-
expect(
|
26
|
-
expect(
|
27
|
-
expect(
|
28
|
-
expect(
|
29
|
-
expect(
|
30
|
-
expect(
|
31
|
-
RSpec.describe manifestation.subjects.collect(
|
32
|
-
it { is_expected.to include(
|
33
|
-
it { is_expected.to include(
|
34
|
-
it { is_expected.to include(
|
35
|
-
it { is_expected.to include(
|
36
|
-
it { is_expected.to include(
|
37
|
-
it { is_expected.to include(
|
7
|
+
it "should create a valid manifestation", vcr: true do
|
8
|
+
manifestation = LocSearch.import_from_sru_response("2007012024")
|
9
|
+
expect(manifestation.manifestation_identifier).to eq "14780655"
|
10
|
+
expect(manifestation.original_title).to eq "Everything is miscellaneous : the power of the new digital disorder"
|
11
|
+
expect(manifestation.manifestation_content_type.name).to eq "text"
|
12
|
+
expect(manifestation.carrier_type.name).to eq "volume"
|
13
|
+
expect(manifestation.publishers.size).to eq 1
|
14
|
+
expect(manifestation.publishers.first.full_name).to eq "Times Books"
|
15
|
+
expect(manifestation.publication_place).to eq "New York"
|
16
|
+
expect(manifestation.creators.size).to eq 1
|
17
|
+
expect(manifestation.creators.first.agent_type.name).to eq "person"
|
18
|
+
expect(manifestation.creators.first.full_name).to eq "Weinberger, David, 1950-"
|
19
|
+
expect(manifestation.edition_string).to eq "1st ed."
|
20
|
+
expect(manifestation.language.iso_639_2).to eq "eng"
|
21
|
+
expect(manifestation.date_of_publication.year).to eq 2007
|
22
|
+
expect(manifestation.start_page).to eq 1
|
23
|
+
expect(manifestation.end_page).to eq 277
|
24
|
+
expect(manifestation.height).to eq 25
|
25
|
+
expect(manifestation.note).to eq "Includes bibliographical references (p. [235]-257) and index."
|
26
|
+
expect(manifestation.description).to eq "Philosopher Weinberger shows how the digital revolution is radically changing the way we make sense of our lives. Human beings constantly collect, label, and organize data--but today, the shift from the physical to the digital is mixing, burning, and ripping our lives apart. In the past, everything had its one place--the physical world demanded it--but now everything has its places: multiple categories, multiple shelves. Everything is suddenly miscellaneous. Weinberger charts the new principles of digital order that are remaking business, education, politics, science, and culture. He examines how Rand McNally decides what information not to include in a physical map (and why Google Earth is winning that battle), how Staples stores emulate online shopping to increase sales, why your children's teachers will stop having them memorize facts, and how the shift to digital music stands as the model for the future.--From publisher description.\nFrom A to Z, Everything Is Miscellaneous will completely reshape the way you think - and what you know - about the world. Includes information on alphabetical order, Amaxon.com, animals, Aristotle, authority, Bettmann Archive, blogs (weblogs), books, broadcasting, British Broadcasting Corporation (BBC), business, card catalog, categories and categorization, clusters, companies, Colon Classification, conversation, Melvil Dewey, Dewey Decimal Classification system, Encyclopaedia Britannica, encyclopedia, essentialism, experts, faceted classification system, first order of order, Flickr.com, Google, Great Books of the Western World, ancient Greeks, health and medical information, identifiers, index, inventory tracking, knowledge, labels, leaf and leaves, libraries, Library of Congress, links, Carolus Linnaeus, lumping and splitting, maps and mapping, marketing, meaning, metadata, multiple listing services (MLS), names of people, neutrality or neutral point of view, New York Public Library, Online Computer Library Center (OCLC), order and organization, people, physical space, everything having place, Plato, race, S.R. Ranganathan, Eleanor Rosch, Joshua Schacter, science, second order of order, simplicity, social constructivism, social knowledge, social networks, sorting, species, standardization, tags, taxonomies, third order of roder, topical categorization, tree, Uniform Product Code (UPC), users, Jimmy Wales, web, Wikipedia, etc."
|
27
|
+
expect(manifestation.statement_of_responsibility).to eq "David Weinberger."
|
28
|
+
expect(manifestation.subjects.size).to eq 6
|
29
|
+
expect(manifestation.subjects.first.subject_heading_type.name).to eq "lcsh"
|
30
|
+
expect(manifestation.subjects.first.subject_type.name).to eq "concept"
|
31
|
+
RSpec.describe manifestation.subjects.collect(&:term) do
|
32
|
+
it { is_expected.to include("Knowledge management") }
|
33
|
+
it { is_expected.to include("Information technology--Management") }
|
34
|
+
it { is_expected.to include("Information technology--Social aspects") }
|
35
|
+
it { is_expected.to include("Personal information management") }
|
36
|
+
it { is_expected.to include("Information resources management") }
|
37
|
+
it { is_expected.to include("Order") }
|
38
38
|
end
|
39
|
-
expect(
|
39
|
+
expect(manifestation.classifications.size).to eq 1
|
40
40
|
classification = manifestation.classifications.first
|
41
|
-
expect(
|
42
|
-
expect(
|
43
|
-
expect(
|
44
|
-
expect(
|
41
|
+
expect(classification.classification_type.name).to eq "ddc"
|
42
|
+
expect(classification.category).to eq "303.48"
|
43
|
+
expect(manifestation.identifier_contents("isbn").first).to eq "9780805080438"
|
44
|
+
expect(manifestation.identifier_contents("lccn").first).to eq "2007012024"
|
45
45
|
end
|
46
46
|
|
47
|
-
it "should parse title information properly", :
|
48
|
-
manifestation = LocSearch.import_from_sru_response(
|
49
|
-
expect(
|
50
|
-
expect(
|
47
|
+
it "should parse title information properly", vcr: true do
|
48
|
+
manifestation = LocSearch.import_from_sru_response("2012532441")
|
49
|
+
expect(manifestation.original_title).to eq "The data journalism handbook"
|
50
|
+
expect(manifestation.title_alternative).to eq "How journalists can use data to improve the news"
|
51
51
|
end
|
52
52
|
|
53
|
-
it "should distinguish title information with subject", :
|
54
|
-
m = LocSearch.import_from_sru_response(
|
55
|
-
expect(
|
53
|
+
it "should distinguish title information with subject", vcr: true do
|
54
|
+
m = LocSearch.import_from_sru_response("2008273186")
|
55
|
+
expect(m.original_title).to eq "Flexible Rails : Flex 3 on Rails 2"
|
56
56
|
end
|
57
57
|
|
58
|
-
it "should create multiple series_statements", :
|
59
|
-
m = LocSearch.import_from_sru_response(
|
60
|
-
expect(
|
61
|
-
RSpec.describe m.series_statements.collect(
|
62
|
-
it { is_expected.to include(
|
63
|
-
it { is_expected.to include(
|
58
|
+
it "should create multiple series_statements", vcr: true do
|
59
|
+
m = LocSearch.import_from_sru_response("2012471967")
|
60
|
+
expect(m.series_statements.size).to eq 2
|
61
|
+
RSpec.describe m.series_statements.collect(&:original_title) do
|
62
|
+
it { is_expected.to include("The Pragmatic Programmers") }
|
63
|
+
it { is_expected.to include("The Facets of Ruby Series") }
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
67
|
-
it "should create lcsh subjects only", :
|
68
|
-
m = LocSearch.import_from_sru_response(
|
69
|
-
expect(
|
70
|
-
RSpec.describe m.subjects.collect(
|
71
|
-
it { is_expected.to include(
|
72
|
-
it { is_expected.to include(
|
67
|
+
it "should create lcsh subjects only", vcr: true do
|
68
|
+
m = LocSearch.import_from_sru_response("2011281911")
|
69
|
+
expect(m.subjects.size).to eq 2
|
70
|
+
RSpec.describe m.subjects.collect(&:term) do
|
71
|
+
it { is_expected.to include("Computer software--Development") }
|
72
|
+
it { is_expected.to include("Ruby (Computer program language)") }
|
73
73
|
end
|
74
74
|
end
|
75
75
|
|
76
|
-
it "should support name and title subjects", :
|
77
|
-
m = LocSearch.import_from_sru_response(
|
78
|
-
expect(
|
79
|
-
RSpec.describe m.subjects.collect(
|
80
|
-
it { is_expected.to include(
|
81
|
-
it { is_expected.to include(
|
82
|
-
it { is_expected.to include(
|
76
|
+
it "should support name and title subjects", vcr: true do
|
77
|
+
m = LocSearch.import_from_sru_response("2013433146")
|
78
|
+
expect(m.subjects.size).to eq 3
|
79
|
+
RSpec.describe m.subjects.collect(&:term) do
|
80
|
+
it { is_expected.to include("Montgomery, L. M. (Lucy Maud), 1874-1942. Anne of Green Gables") }
|
81
|
+
it { is_expected.to include("Montgomery, L. M. (Lucy Maud), 1874-1942--Criticism and interpretation") }
|
82
|
+
it { is_expected.to include("Montgomery, L. M. (Lucy Maud), 1874-1942--Influence") }
|
83
83
|
end
|
84
84
|
end
|
85
85
|
|
86
|
-
it "should import note fields", :
|
87
|
-
m = LocSearch.import_from_sru_response(
|
88
|
-
expect(
|
89
|
-
expect(
|
90
|
-
expect(
|
86
|
+
it "should import note fields", vcr: true do
|
87
|
+
m = LocSearch.import_from_sru_response("2010526151")
|
88
|
+
expect(m.note).not_to be_nil
|
89
|
+
expect(m.note).not_to be_empty
|
90
|
+
expect(m.note).to eq %Q["This is a book about the design of user interfaces for search and discovery"--Pref.;\n"January 2010"--T.p. verso.;\nIncludes bibliographical references and index.]
|
91
91
|
end
|
92
92
|
|
93
|
-
it "should import publication year", :
|
94
|
-
m = LocSearch.import_from_sru_response(
|
95
|
-
expect(
|
93
|
+
it "should import publication year", vcr: true do
|
94
|
+
m = LocSearch.import_from_sru_response("2001315134")
|
95
|
+
expect(m.date_of_publication.year).to eq 2000
|
96
96
|
end
|
97
97
|
|
98
|
-
it "should import e-resource", :
|
99
|
-
m = LocSearch.import_from_sru_response(
|
100
|
-
expect(
|
101
|
-
expect(
|
98
|
+
it "should import e-resource", vcr: true do
|
99
|
+
m = LocSearch.import_from_sru_response("2005568297")
|
100
|
+
expect(m.carrier_type).to eq CarrierType.where(name: "online_resource").first
|
101
|
+
expect(m.access_address).to eq "http://portal.acm.org/dl.cfm"
|
102
102
|
end
|
103
103
|
|
104
|
-
it "should import e-resource (packaged)", :
|
105
|
-
m = LocSearch.import_from_sru_response(
|
106
|
-
expect(
|
107
|
-
expect(
|
108
|
-
expect(
|
109
|
-
expect(
|
104
|
+
it "should import e-resource (packaged)", vcr: true do
|
105
|
+
m = LocSearch.import_from_sru_response("2006575029")
|
106
|
+
expect(m.original_title).to eq "Microsoft Encarta 2006 premium"
|
107
|
+
expect(m.statement_of_responsibility).to eq "Microsoft Corporation"
|
108
|
+
expect(m.carrier_type).to eq CarrierType.where(name: "online_resource").first
|
109
|
+
expect(m.manifestation_content_type).to eq ContentType.where(name: "other").first
|
110
110
|
end
|
111
111
|
|
112
|
-
it "should import audio book", :
|
113
|
-
m = LocSearch.import_from_sru_response(
|
114
|
-
expect(
|
115
|
-
expect(
|
112
|
+
it "should import audio book", vcr: true do
|
113
|
+
m = LocSearch.import_from_sru_response("2007576782") # RDA metadata
|
114
|
+
expect(m.manifestation_content_type).to eq ContentType.where(name: "spoken_word").first
|
115
|
+
expect(m.carrier_type).to eq CarrierType.where(name: "audio_disc").first
|
116
116
|
end
|
117
117
|
|
118
|
-
it "should import video publication", :
|
119
|
-
m = LocSearch.import_from_sru_response(
|
120
|
-
expect(
|
121
|
-
expect(
|
118
|
+
it "should import video publication", vcr: true do
|
119
|
+
m = LocSearch.import_from_sru_response("2013602064")
|
120
|
+
expect(m.manifestation_content_type).to eq ContentType.where(name: "two_dimensional_moving_image").first
|
121
|
+
expect(m.carrier_type).to eq CarrierType.where(name: "videodisc").first
|
122
122
|
end
|
123
123
|
|
124
|
-
it "should import serial", :
|
125
|
-
m = LocSearch.import_from_sru_response(
|
126
|
-
expect(
|
127
|
-
expect(
|
128
|
-
expect(
|
129
|
-
expect(
|
130
|
-
expect(
|
124
|
+
it "should import serial", vcr: true do
|
125
|
+
m = LocSearch.import_from_sru_response("00200486")
|
126
|
+
expect(m.original_title).to eq "Science and technology of advanced materials"
|
127
|
+
expect(m.serial).to be_truthy
|
128
|
+
expect(m.identifier_contents(:issn).first).to eq "14686996"
|
129
|
+
expect(m.identifier_contents(:issn_l).first).to eq "14686996"
|
130
|
+
expect(m.frequency.name).to eq "bimonthly"
|
131
131
|
series_statement = m.series_statements.first
|
132
|
-
expect(
|
133
|
-
expect(
|
134
|
-
end
|
135
|
-
it "should import another serial", :
|
136
|
-
m = LocSearch.import_from_sru_response(
|
137
|
-
expect(
|
138
|
-
expect(
|
139
|
-
expect(
|
140
|
-
expect(
|
141
|
-
expect(
|
142
|
-
expect(
|
132
|
+
expect(series_statement.original_title).to eq "Science and technology of advanced materials"
|
133
|
+
expect(series_statement.series_master).to be_truthy
|
134
|
+
end
|
135
|
+
it "should import another serial", vcr: true do
|
136
|
+
m = LocSearch.import_from_sru_response("88651712")
|
137
|
+
expect(m.original_title).to eq "Superconductor science & technology"
|
138
|
+
expect(m.title_alternative).to eq "Supercond. sci. technol ; Superconductor science and technology"
|
139
|
+
expect(m.serial).to be_truthy
|
140
|
+
expect(m.identifier_contents(:issn).first).to eq "09532048"
|
141
|
+
expect(m.identifier_contents(:issn_l).first).to eq "09532048"
|
142
|
+
expect(m.frequency.name).to eq "monthly"
|
143
143
|
series_statement = m.series_statements.first
|
144
|
-
expect(
|
145
|
-
expect(
|
146
|
-
expect(
|
144
|
+
expect(series_statement.original_title).to eq m.original_title
|
145
|
+
expect(series_statement.title_alternative).to eq m.title_alternative
|
146
|
+
expect(series_statement.series_master).to be_truthy
|
147
147
|
end
|
148
148
|
|
149
|
-
it "should import a manifestation that has invalid classification", :
|
150
|
-
m = LocSearch.import_from_sru_response(
|
151
|
-
expect(
|
152
|
-
expect(
|
149
|
+
it "should import a manifestation that has invalid classification", vcr: true do
|
150
|
+
m = LocSearch.import_from_sru_response("2014381788")
|
151
|
+
expect(m).to be_valid
|
152
|
+
expect(m.classifications).to be_empty
|
153
153
|
end
|
154
154
|
|
155
|
-
it "should import notated music", :
|
156
|
-
m = LocSearch.import_from_sru_response(
|
157
|
-
expect(
|
158
|
-
expect(
|
155
|
+
it "should import notated music", vcr: true do
|
156
|
+
m = LocSearch.import_from_sru_response("2014563060")
|
157
|
+
expect(m.manifestation_content_type).to eq ContentType.where(name: 'notated_music').first
|
158
|
+
expect(m.language_id).to eq 1 # language: unknown
|
159
159
|
end
|
160
160
|
|
161
|
-
it "should import lccn exact math", :
|
162
|
-
m = LocSearch.import_from_sru_response(
|
163
|
-
expect(
|
164
|
-
expect(
|
161
|
+
it "should import lccn exact math", vcr: true do
|
162
|
+
m = LocSearch.import_from_sru_response("93028401")
|
163
|
+
expect(m).to be_valid
|
164
|
+
expect(m.original_title).to eq "How to lie with statistics"
|
165
165
|
end
|
166
166
|
|
167
167
|
it "should import extent", vcr: true do
|
168
|
-
m = LocSearch.import_from_sru_response(
|
168
|
+
m = LocSearch.import_from_sru_response("94041789")
|
169
169
|
expect(m).to be_valid
|
170
|
-
expect(m.original_title).to eq "The
|
170
|
+
expect(m.original_title).to eq "The little boat"
|
171
171
|
expect(m.extent).to eq "1 v. (unpaged) : col. ill."
|
172
172
|
expect(m.dimensions).to eq "25 x 29 cm."
|
173
173
|
end
|
174
174
|
end
|
175
175
|
|
176
|
-
context ".search", :
|
177
|
-
it "should return a search result", :
|
178
|
-
result = LocSearch.search(
|
179
|
-
expect(
|
176
|
+
context ".search", vcr: true do
|
177
|
+
it "should return a search result", vcr: true do
|
178
|
+
result = LocSearch.search('library')
|
179
|
+
expect(result[:total_entries]).to eq 10000
|
180
180
|
end
|
181
181
|
end
|
182
182
|
|
183
183
|
context "::ModsRecord" do
|
184
|
-
it "should parse MODS metadata", :
|
185
|
-
results = LocSearch.search(
|
184
|
+
it "should parse MODS metadata", vcr: true do
|
185
|
+
results = LocSearch.search("bath.lccn=2007012024")
|
186
186
|
metadata = results[ :items ].first
|
187
|
-
expect(
|
188
|
-
expect(
|
189
|
-
expect(
|
190
|
-
expect(
|
191
|
-
expect(
|
192
|
-
expect(
|
187
|
+
expect(metadata.lccn).to eq "2007012024"
|
188
|
+
expect(metadata.title).to eq "Everything is miscellaneous : the power of the new digital disorder"
|
189
|
+
expect(metadata.creator).to eq "David Weinberger."
|
190
|
+
expect(metadata.pubyear).to eq "2007"
|
191
|
+
expect(metadata.publisher).to eq "Times Books"
|
192
|
+
expect(metadata.isbn).to eq "9780805080438"
|
193
193
|
end
|
194
194
|
end
|
195
195
|
|
196
196
|
context ".make_sru_request_uri" do
|
197
197
|
it "should construct a valid uri" do
|
198
|
-
url = LocSearch.make_sru_request_uri(
|
199
|
-
uri = URI.parse(
|
200
|
-
expect(
|
198
|
+
url = LocSearch.make_sru_request_uri("test")
|
199
|
+
uri = URI.parse(url)
|
200
|
+
expect(Hash[uri.query.split(/\&/).collect{|e| e.split(/=/) }]).to eq({
|
201
201
|
"query" => "test",
|
202
202
|
"version" => "1.1",
|
203
203
|
"operation" => "searchRetrieve",
|
204
204
|
"maximumRecords" => "10",
|
205
205
|
"recordSchema" => "mods"
|
206
|
-
}
|
206
|
+
})
|
207
207
|
end
|
208
208
|
|
209
209
|
it "should support pagination" do
|
210
|
-
url = LocSearch.make_sru_request_uri(
|
211
|
-
uri = URI.parse(
|
212
|
-
expect(
|
210
|
+
url = LocSearch.make_sru_request_uri("test", page: 2)
|
211
|
+
uri = URI.parse(url)
|
212
|
+
expect(Hash[uri.query.split(/\&/).collect{|e| e.split(/=/) }]).to eq({
|
213
213
|
"query" => "test",
|
214
214
|
"version" => "1.1",
|
215
215
|
"operation" => "searchRetrieve",
|
216
216
|
"maximumRecords" => "10",
|
217
217
|
"recordSchema" => "mods",
|
218
218
|
"startRecord" => "11",
|
219
|
-
}
|
219
|
+
})
|
220
220
|
end
|
221
221
|
end
|
222
222
|
end
|
data/spec/rails_helper.rb
CHANGED
@@ -34,10 +34,6 @@ RSpec.configure do |config|
|
|
34
34
|
config.use_transactional_fixtures = true
|
35
35
|
config.extend ControllerMacros, :type => :controller
|
36
36
|
|
37
|
-
config.before do
|
38
|
-
Sunspot.session = Sunspot::Rails::StubSessionProxy.new($original_sunspot_session)
|
39
|
-
end
|
40
|
-
|
41
37
|
config.infer_spec_type_from_file_location!
|
42
38
|
end
|
43
39
|
|
@@ -46,4 +42,5 @@ VCR.configure do |c|
|
|
46
42
|
c.hook_into :webmock
|
47
43
|
c.configure_rspec_metadata!
|
48
44
|
c.allow_http_connections_when_no_cassette = true
|
45
|
+
c.ignore_localhost = true
|
49
46
|
end
|