newspaper_works 0.1.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 +7 -0
- data/.fcrepo_wrapper +4 -0
- data/.gitignore +43 -0
- data/.rubocop.yml +143 -0
- data/.solr_wrapper +8 -0
- data/.travis.yml +50 -0
- data/Gemfile +47 -0
- data/LICENSE +203 -0
- data/README.md +159 -0
- data/Rakefile +38 -0
- data/app/actors/hyrax/actors/newspaper_article_actor.rb +8 -0
- data/app/actors/hyrax/actors/newspaper_container_actor.rb +8 -0
- data/app/actors/hyrax/actors/newspaper_issue_actor.rb +8 -0
- data/app/actors/hyrax/actors/newspaper_page_actor.rb +8 -0
- data/app/actors/hyrax/actors/newspaper_title_actor.rb +8 -0
- data/app/actors/newspaper_works/actors/newspaper_works_upload_actor.rb +88 -0
- data/app/assets/config/newspaper_works_manifest.js +2 -0
- data/app/assets/images/newspaper_works/.keep +0 -0
- data/app/assets/javascripts/newspaper_works/autocomplete_fix.js +33 -0
- data/app/assets/javascripts/newspaper_works/ocr_search.js.erb +6 -0
- data/app/assets/javascripts/newspaper_works/thumbnail_highlights.js.erb +102 -0
- data/app/assets/javascripts/newspaper_works.js +4 -0
- data/app/assets/stylesheets/newspaper_works/_issue_search.scss +13 -0
- data/app/assets/stylesheets/newspaper_works/_issues_calendar.scss +18 -0
- data/app/assets/stylesheets/newspaper_works/_newspaper_works.scss +4 -0
- data/app/assets/stylesheets/newspaper_works/_newspapers_search.scss +38 -0
- data/app/assets/stylesheets/newspaper_works/_search_results.scss +12 -0
- data/app/controllers/hyrax/newspaper_articles_controller.rb +14 -0
- data/app/controllers/hyrax/newspaper_containers_controller.rb +14 -0
- data/app/controllers/hyrax/newspaper_issues_controller.rb +14 -0
- data/app/controllers/hyrax/newspaper_pages_controller.rb +14 -0
- data/app/controllers/hyrax/newspaper_titles_controller.rb +13 -0
- data/app/controllers/newspaper_works/newspapers_controller.rb +117 -0
- data/app/controllers/newspaper_works/newspapers_search_controller.rb +26 -0
- data/app/forms/hyrax/newspaper_article_form.rb +11 -0
- data/app/forms/hyrax/newspaper_container_form.rb +11 -0
- data/app/forms/hyrax/newspaper_issue_form.rb +11 -0
- data/app/forms/hyrax/newspaper_page_form.rb +15 -0
- data/app/forms/hyrax/newspaper_title_form.rb +12 -0
- data/app/forms/newspaper_works/newspaper_core_form_data.rb +17 -0
- data/app/helpers/hyrax/newspaper_articles_helper.rb +5 -0
- data/app/helpers/hyrax/newspaper_containers_helper.rb +5 -0
- data/app/helpers/hyrax/newspaper_issues_helper.rb +5 -0
- data/app/helpers/hyrax/newspaper_pages_helper.rb +5 -0
- data/app/helpers/newspaper_works/application_helper.rb +5 -0
- data/app/helpers/newspaper_works/breadcrumb_helper.rb +92 -0
- data/app/helpers/newspaper_works/newspaper_works_helper_behavior.rb +103 -0
- data/app/helpers/newspaper_works/newspapers_helper.rb +5 -0
- data/app/indexers/concerns/newspaper_works/indexes_full_text.rb +17 -0
- data/app/indexers/concerns/newspaper_works/indexes_place_of_publication.rb +67 -0
- data/app/indexers/concerns/newspaper_works/indexes_publication_date_range.rb +35 -0
- data/app/indexers/concerns/newspaper_works/indexes_relationships.rb +125 -0
- data/app/indexers/newspaper_article_indexer.rb +16 -0
- data/app/indexers/newspaper_container_indexer.rb +18 -0
- data/app/indexers/newspaper_issue_indexer.rb +26 -0
- data/app/indexers/newspaper_page_indexer.rb +9 -0
- data/app/indexers/newspaper_title_indexer.rb +19 -0
- data/app/indexers/newspaper_works/newspaper_core_indexer.rb +21 -0
- data/app/jobs/newspaper_works/application_job.rb +4 -0
- data/app/jobs/newspaper_works/compose_issue_pdf_job.rb +13 -0
- data/app/jobs/newspaper_works/create_issue_pages_job.rb +19 -0
- data/app/mailers/newspaper_works/application_mailer.rb +8 -0
- data/app/models/concerns/newspaper_works/blacklight_iiif_search/annotation_behavior.rb +82 -0
- data/app/models/concerns/newspaper_works/blacklight_iiif_search/search_behavior.rb +27 -0
- data/app/models/concerns/newspaper_works/newspaper_core_metadata.rb +67 -0
- data/app/models/concerns/newspaper_works/place_of_publication_behavior.rb +15 -0
- data/app/models/concerns/newspaper_works/scanned_media_metadata.rb +43 -0
- data/app/models/concerns/newspaper_works/solr/document.rb +25 -0
- data/app/models/file_set.rb +10 -0
- data/app/models/newspaper_article.rb +158 -0
- data/app/models/newspaper_container.rb +86 -0
- data/app/models/newspaper_issue.rb +115 -0
- data/app/models/newspaper_page.rb +70 -0
- data/app/models/newspaper_title.rb +111 -0
- data/app/models/newspaper_works/application_record.rb +6 -0
- data/app/models/newspaper_works/derivative_attachment.rb +8 -0
- data/app/models/newspaper_works/ingest_file_relation.rb +14 -0
- data/app/presenters/hyrax/newspaper_article_presenter.rb +38 -0
- data/app/presenters/hyrax/newspaper_container_presenter.rb +11 -0
- data/app/presenters/hyrax/newspaper_issue_presenter.rb +62 -0
- data/app/presenters/hyrax/newspaper_page_presenter.rb +72 -0
- data/app/presenters/hyrax/newspaper_title_presenter.rb +86 -0
- data/app/presenters/newspaper_works/iiif_manifest_presenter_behavior.rb +29 -0
- data/app/presenters/newspaper_works/issue_info_presenter.rb +29 -0
- data/app/presenters/newspaper_works/newspaper_core_presenter.rb +9 -0
- data/app/presenters/newspaper_works/persistent_url_presenter_behavior.rb +16 -0
- data/app/presenters/newspaper_works/place_of_publication_presenter_behavior.rb +8 -0
- data/app/presenters/newspaper_works/scanned_media_presenter.rb +7 -0
- data/app/presenters/newspaper_works/title_info_presenter.rb +13 -0
- data/app/search_builders/concerns/newspaper_works/exclude_models.rb +16 -0
- data/app/search_builders/concerns/newspaper_works/highlight_search_params.rb +14 -0
- data/app/search_builders/newspaper_works/newspapers_search_builder.rb +26 -0
- data/app/services/hyrax/article_genre_service.rb +9 -0
- data/app/services/newspaper_works/jp2_derivative_service.rb +120 -0
- data/app/services/newspaper_works/newspaper_page_derivative_service.rb +91 -0
- data/app/services/newspaper_works/pdf_derivative_service.rb +45 -0
- data/app/services/newspaper_works/pluggable_derivative_service.rb +114 -0
- data/app/services/newspaper_works/text_extraction_derivative_service.rb +56 -0
- data/app/services/newspaper_works/text_formats_from_alto_service.rb +77 -0
- data/app/services/newspaper_works/tiff_derivative_service.rb +54 -0
- data/app/validators/newspaper_works/publication_date_start_end_validator.rb +48 -0
- data/app/validators/newspaper_works/publication_date_validator.rb +16 -0
- data/app/views/catalog/_index_gallery_newspaper_article_wrapper.html.erb +9 -0
- data/app/views/catalog/_index_gallery_newspaper_page_wrapper.html.erb +9 -0
- data/app/views/catalog/_index_header_gallery_newspaper_article.html.erb +23 -0
- data/app/views/catalog/_index_header_gallery_newspaper_page.html.erb +23 -0
- data/app/views/catalog/_index_header_list_newspaper_article.html.erb +7 -0
- data/app/views/catalog/_index_header_list_newspaper_page.html.erb +7 -0
- data/app/views/catalog/_snippets_more.html.erb +16 -0
- data/app/views/catalog/_thumbnail_list_newspaper_article.html.erb +6 -0
- data/app/views/catalog/_thumbnail_list_newspaper_page.html.erb +6 -0
- data/app/views/hyrax/file_sets/_actions.html.erb +45 -0
- data/app/views/hyrax/newspaper_articles/_newspaper_article.html.erb +2 -0
- data/app/views/hyrax/newspaper_articles/show.html.erb +1 -0
- data/app/views/hyrax/newspaper_containers/_newspaper_container.html.erb +2 -0
- data/app/views/hyrax/newspaper_containers/show.html.erb +1 -0
- data/app/views/hyrax/newspaper_issues/_newspaper_issue.html.erb +2 -0
- data/app/views/hyrax/newspaper_issues/show.html.erb +1 -0
- data/app/views/hyrax/newspaper_pages/_newspaper_page.html.erb +2 -0
- data/app/views/hyrax/newspaper_pages/show.html.erb +1 -0
- data/app/views/hyrax/newspaper_titles/_all_front_pages_form.html.erb +5 -0
- data/app/views/hyrax/newspaper_titles/_issue_search_form.html.erb +33 -0
- data/app/views/hyrax/newspaper_titles/_issues_calendar.html.erb +63 -0
- data/app/views/hyrax/newspaper_titles/_newspaper_title.html.erb +2 -0
- data/app/views/hyrax/newspaper_titles/show.html.erb +54 -0
- data/app/views/newspaper_works/base/_attribute_rows.html.erb +42 -0
- data/app/views/newspaper_works/base/_attributes.html.erb +16 -0
- data/app/views/newspaper_works/base/_metadata.html.erb +6 -0
- data/app/views/newspaper_works/base/_newspaper_hierarchy.html.erb +14 -0
- data/app/views/newspaper_works/base/_persistent_url.html.erb +1 -0
- data/app/views/newspaper_works/base/_show.html.erb +45 -0
- data/app/views/newspaper_works/newspapers_search/_date_fields.html.erb +29 -0
- data/app/views/newspaper_works/newspapers_search/_facet_layout.html.erb +8 -0
- data/app/views/newspaper_works/newspapers_search/_facet_limit.html.erb +17 -0
- data/app/views/newspaper_works/newspapers_search/_front_pages_input.html.erb +5 -0
- data/app/views/newspaper_works/newspapers_search/_keyword_input.html.erb +18 -0
- data/app/views/newspaper_works/newspapers_search/_newspapers_facets.html.erb +5 -0
- data/app/views/newspaper_works/newspapers_search/_newspapers_search_form.html.erb +13 -0
- data/app/views/newspaper_works/newspapers_search/_newspapers_search_help.html.erb +8 -0
- data/app/views/newspaper_works/newspapers_search/search.html.erb +13 -0
- data/app/views/records/edit_fields/_alternate_title.html.erb +4 -0
- data/app/views/records/edit_fields/_genre.html.erb +4 -0
- data/app/views/records/edit_fields/_place_of_publication.html.erb +14 -0
- data/app/views/records/edit_fields/_subtitle.html.erb +4 -0
- data/bin/rails +13 -0
- data/config/fcrepo_wrapper_test.yml +5 -0
- data/config/initializers/assets.rb +2 -0
- data/config/locales/newspaper_article.de.yml +12 -0
- data/config/locales/newspaper_article.en.yml +12 -0
- data/config/locales/newspaper_article.es.yml +12 -0
- data/config/locales/newspaper_article.fr.yml +12 -0
- data/config/locales/newspaper_article.it.yml +12 -0
- data/config/locales/newspaper_article.pt-BR.yml +12 -0
- data/config/locales/newspaper_article.zh.yml +12 -0
- data/config/locales/newspaper_container.de.yml +8 -0
- data/config/locales/newspaper_container.en.yml +8 -0
- data/config/locales/newspaper_container.es.yml +8 -0
- data/config/locales/newspaper_container.fr.yml +8 -0
- data/config/locales/newspaper_container.it.yml +8 -0
- data/config/locales/newspaper_container.pt-BR.yml +8 -0
- data/config/locales/newspaper_container.zh.yml +8 -0
- data/config/locales/newspaper_issue.de.yml +8 -0
- data/config/locales/newspaper_issue.en.yml +8 -0
- data/config/locales/newspaper_issue.es.yml +8 -0
- data/config/locales/newspaper_issue.fr.yml +8 -0
- data/config/locales/newspaper_issue.it.yml +8 -0
- data/config/locales/newspaper_issue.pt-BR.yml +8 -0
- data/config/locales/newspaper_issue.zh.yml +8 -0
- data/config/locales/newspaper_page.de.yml +15 -0
- data/config/locales/newspaper_page.en.yml +15 -0
- data/config/locales/newspaper_page.es.yml +15 -0
- data/config/locales/newspaper_page.fr.yml +15 -0
- data/config/locales/newspaper_page.it.yml +15 -0
- data/config/locales/newspaper_page.pt-BR.yml +15 -0
- data/config/locales/newspaper_page.zh.yml +15 -0
- data/config/locales/newspaper_title.de.yml +8 -0
- data/config/locales/newspaper_title.en.yml +8 -0
- data/config/locales/newspaper_title.es.yml +8 -0
- data/config/locales/newspaper_title.fr.yml +8 -0
- data/config/locales/newspaper_title.it.yml +8 -0
- data/config/locales/newspaper_title.pt-BR.yml +8 -0
- data/config/locales/newspaper_title.zh.yml +8 -0
- data/config/locales/newspaper_works.de.yml +50 -0
- data/config/locales/newspaper_works.en.yml +52 -0
- data/config/locales/newspaper_works.es.yml +52 -0
- data/config/locales/newspaper_works.fr.yml +52 -0
- data/config/locales/newspaper_works.it.yml +52 -0
- data/config/locales/newspaper_works.pt-BR.yml +52 -0
- data/config/locales/newspaper_works.zh.yml +52 -0
- data/config/routes.rb +9 -0
- data/config/solr_wrapper_test.yml +9 -0
- data/config/test-fixture/solr-config/_rest_managed.json +3 -0
- data/config/test-fixture/solr-config/admin-extra.html +31 -0
- data/config/test-fixture/solr-config/elevate.xml +36 -0
- data/config/test-fixture/solr-config/mapping-ISOLatin1Accent.txt +246 -0
- data/config/test-fixture/solr-config/protwords.txt +21 -0
- data/config/test-fixture/solr-config/schema.xml +366 -0
- data/config/test-fixture/solr-config/scripts.conf +24 -0
- data/config/test-fixture/solr-config/solrconfig.xml +322 -0
- data/config/test-fixture/solr-config/spellings.txt +2 -0
- data/config/test-fixture/solr-config/stopwords.txt +58 -0
- data/config/test-fixture/solr-config/stopwords_en.txt +58 -0
- data/config/test-fixture/solr-config/synonyms.txt +31 -0
- data/config/test-fixture/solr-config/xslt/example.xsl +132 -0
- data/config/test-fixture/solr-config/xslt/example_atom.xsl +67 -0
- data/config/test-fixture/solr-config/xslt/example_rss.xsl +66 -0
- data/config/test-fixture/solr-config/xslt/luke.xsl +337 -0
- data/config/vendor/imagemagick-6-policy.xml +76 -0
- data/db/migrate/20181214181358_create_newspaper_works_derivative_attachments.rb +12 -0
- data/db/migrate/20190107165909_create_newspaper_works_ingest_file_relations.rb +11 -0
- data/lib/generators/newspaper_works/assets_generator.rb +29 -0
- data/lib/generators/newspaper_works/blacklight_advanced_search_generator.rb +44 -0
- data/lib/generators/newspaper_works/blacklight_iiif_search_generator.rb +41 -0
- data/lib/generators/newspaper_works/catalog_controller_generator.rb +60 -0
- data/lib/generators/newspaper_works/install_generator.rb +97 -0
- data/lib/generators/newspaper_works/templates/annotation_behavior.rb +6 -0
- data/lib/generators/newspaper_works/templates/config/authorities/newspaper_article_genres.yml +86 -0
- data/lib/generators/newspaper_works/templates/config/initializers/newspaper_works.rb +12 -0
- data/lib/generators/newspaper_works/templates/config/initializers/patch_blacklight_advanced_search.rb +74 -0
- data/lib/generators/newspaper_works/templates/custom_search_builder.rb +23 -0
- data/lib/generators/newspaper_works/templates/newspaper_works.scss +1 -0
- data/lib/generators/newspaper_works/templates/newspaper_works_helper.rb +3 -0
- data/lib/generators/newspaper_works/templates/search_behavior.rb +6 -0
- data/lib/newspaper_works/configuration.rb +14 -0
- data/lib/newspaper_works/data/fileset_helper.rb +25 -0
- data/lib/newspaper_works/data/path_helper.rb +40 -0
- data/lib/newspaper_works/data/work_derivatives.rb +314 -0
- data/lib/newspaper_works/data/work_file.rb +92 -0
- data/lib/newspaper_works/data/work_files.rb +181 -0
- data/lib/newspaper_works/data.rb +35 -0
- data/lib/newspaper_works/engine.rb +42 -0
- data/lib/newspaper_works/errors.rb +14 -0
- data/lib/newspaper_works/ingest/base_ingest.rb +69 -0
- data/lib/newspaper_works/ingest/base_publication_info.rb +35 -0
- data/lib/newspaper_works/ingest/batch_ingest_helper.rb +44 -0
- data/lib/newspaper_works/ingest/batch_issue_ingester.rb +129 -0
- data/lib/newspaper_works/ingest/chronam_publication_info.rb +133 -0
- data/lib/newspaper_works/ingest/from_command.rb +52 -0
- data/lib/newspaper_works/ingest/image_ingest_issues.rb +43 -0
- data/lib/newspaper_works/ingest/issue_images.rb +51 -0
- data/lib/newspaper_works/ingest/lc_publication_info.rb +144 -0
- data/lib/newspaper_works/ingest/named_issue_metadata.rb +60 -0
- data/lib/newspaper_works/ingest/ndnp/batch_ingester.rb +64 -0
- data/lib/newspaper_works/ingest/ndnp/batch_xml_ingest.rb +72 -0
- data/lib/newspaper_works/ingest/ndnp/container_ingest.rb +99 -0
- data/lib/newspaper_works/ingest/ndnp/container_ingester.rb +84 -0
- data/lib/newspaper_works/ingest/ndnp/container_metadata.rb +87 -0
- data/lib/newspaper_works/ingest/ndnp/issue_ingest.rb +81 -0
- data/lib/newspaper_works/ingest/ndnp/issue_ingester.rb +101 -0
- data/lib/newspaper_works/ingest/ndnp/issue_metadata.rb +96 -0
- data/lib/newspaper_works/ingest/ndnp/ndnp_asset_helper.rb +20 -0
- data/lib/newspaper_works/ingest/ndnp/ndnp_mets_helper.rb +70 -0
- data/lib/newspaper_works/ingest/ndnp/page_ingest.rb +47 -0
- data/lib/newspaper_works/ingest/ndnp/page_ingester.rb +157 -0
- data/lib/newspaper_works/ingest/ndnp/page_metadata.rb +112 -0
- data/lib/newspaper_works/ingest/ndnp.rb +21 -0
- data/lib/newspaper_works/ingest/newspaper_issue_ingest.rb +56 -0
- data/lib/newspaper_works/ingest/newspaper_page_ingest.rb +6 -0
- data/lib/newspaper_works/ingest/page_image.rb +52 -0
- data/lib/newspaper_works/ingest/path_enumeration.rb +52 -0
- data/lib/newspaper_works/ingest/pdf_images.rb +85 -0
- data/lib/newspaper_works/ingest/pdf_issue.rb +20 -0
- data/lib/newspaper_works/ingest/pdf_issues.rb +39 -0
- data/lib/newspaper_works/ingest/pdf_pages.rb +114 -0
- data/lib/newspaper_works/ingest/pub_finder.rb +89 -0
- data/lib/newspaper_works/ingest/publication_info.rb +44 -0
- data/lib/newspaper_works/ingest.rb +90 -0
- data/lib/newspaper_works/issue_pdf_composer.rb +111 -0
- data/lib/newspaper_works/logging.rb +54 -0
- data/lib/newspaper_works/page_finder.rb +62 -0
- data/lib/newspaper_works/resource_fetcher.rb +78 -0
- data/lib/newspaper_works/text_extraction/alto_reader.rb +122 -0
- data/lib/newspaper_works/text_extraction/page_ocr.rb +100 -0
- data/lib/newspaper_works/text_extraction/render_alto.rb +84 -0
- data/lib/newspaper_works/text_extraction/word_coords_builder.rb +30 -0
- data/lib/newspaper_works/text_extraction.rb +10 -0
- data/lib/newspaper_works/version.rb +3 -0
- data/lib/newspaper_works.rb +19 -0
- data/lib/tasks/newspaper_works_tasks.rake +39 -0
- data/newspaper_works.gemspec +49 -0
- data/spec/.keep.txt +1 -0
- data/spec/actors/newspaper_works/actors/newspaper_works_upload_actor_spec.rb +69 -0
- data/spec/controllers/catalog_controller_spec.rb +63 -0
- data/spec/controllers/newspaper_works/newspapers_controller_spec.rb +114 -0
- data/spec/controllers/newspaper_works/newspapers_search_controller_spec.rb +21 -0
- data/spec/factories/ability.rb +6 -0
- data/spec/factories/newspaper_issue.rb +7 -0
- data/spec/factories/newspaper_issue_ingest.rb +6 -0
- data/spec/factories/newspaper_page.rb +7 -0
- data/spec/factories/newspaper_page_ingest.rb +6 -0
- data/spec/factories/newspaper_page_solr_document.rb +12 -0
- data/spec/factories/newspaper_title.rb +8 -0
- data/spec/factories/uploaded_pdf_file.rb +9 -0
- data/spec/factories/user.rb +13 -0
- data/spec/features/front_pages_for_title_spec.rb +19 -0
- data/spec/features/newspaper_title_search_spec.rb +30 -0
- data/spec/features/newspapers_search_spec.rb +49 -0
- data/spec/features/search_results_thumbnail_highlights_spec.rb +33 -0
- data/spec/features_shared.rb +71 -0
- data/spec/fixtures/files/4.1.07.jp2 +0 -0
- data/spec/fixtures/files/4.1.07.tiff +0 -0
- data/spec/fixtures/files/README.md +7 -0
- data/spec/fixtures/files/alto-2-0.xsd +714 -0
- data/spec/fixtures/files/broken-truncated.pdf +0 -0
- data/spec/fixtures/files/credits.md +16 -0
- data/spec/fixtures/files/lowres-gray-via-ndnp-sample.tiff +0 -0
- data/spec/fixtures/files/minimal-1-page.pdf +0 -0
- data/spec/fixtures/files/minimal-2-page.pdf +0 -0
- data/spec/fixtures/files/minimal-alto.xml +31 -0
- data/spec/fixtures/files/ndnp-alto-sample.xml +24 -0
- data/spec/fixtures/files/ndnp-sample1-json.json +1 -0
- data/spec/fixtures/files/ndnp-sample1-txt.txt +1 -0
- data/spec/fixtures/files/ndnp-sample1.pdf +0 -0
- data/spec/fixtures/files/ocr_alto.xml +202 -0
- data/spec/fixtures/files/ocr_alto_scaled_4pts_per_px.xml +202 -0
- data/spec/fixtures/files/ocr_color.tiff +0 -0
- data/spec/fixtures/files/ocr_gray.jp2 +0 -0
- data/spec/fixtures/files/ocr_gray.tiff +0 -0
- data/spec/fixtures/files/ocr_mono.tiff +0 -0
- data/spec/fixtures/files/page1.tiff +0 -0
- data/spec/fixtures/files/resource_mocks/chronam/http404-expected +0 -0
- data/spec/fixtures/files/resource_mocks/chronam/sn84038814.rdf +1028 -0
- data/spec/fixtures/files/resource_mocks/chronam/sn93059126.rdf +36 -0
- data/spec/fixtures/files/resource_mocks/chronam/sn94051019.rdf +37 -0
- data/spec/fixtures/files/resource_mocks/geonames/Chicopee +1104 -0
- data/spec/fixtures/files/resource_mocks/geonames/Denver +1104 -0
- data/spec/fixtures/files/resource_mocks/geonames/Marysville +279 -0
- data/spec/fixtures/files/resource_mocks/geonames/Marysville2 +279 -0
- data/spec/fixtures/files/resource_mocks/geonames/SLC +1104 -0
- data/spec/fixtures/files/resource_mocks/lccn/sn2099999999 +1 -0
- data/spec/fixtures/files/resource_mocks/lccn/sn82014496 +2 -0
- data/spec/fixtures/files/resource_mocks/lccn/sn83020109 +1 -0
- data/spec/fixtures/files/resource_mocks/lccn/sn83021453 +2 -0
- data/spec/fixtures/files/resource_mocks/lccn/sn83045396 +2 -0
- data/spec/fixtures/files/resource_mocks/lccn/sn84038814 +2 -0
- data/spec/fixtures/files/resource_mocks/lccn/sn93059126 +1 -0
- data/spec/fixtures/files/resource_mocks/lccn/sn94051019 +1 -0
- data/spec/fixtures/files/resource_mocks/lccn/sn99999999 +1 -0
- data/spec/fixtures/files/resource_mocks/urls.json +82 -0
- data/spec/fixtures/files/sample-4page-issue.pdf +0 -0
- data/spec/fixtures/files/sample-color-newsletter.pdf +0 -0
- data/spec/fixtures/files/thumbnail.jpg +0 -0
- data/spec/forms/hyrax/newspaper_article_form_spec.rb +33 -0
- data/spec/forms/hyrax/newspaper_container_form_spec.rb +30 -0
- data/spec/forms/hyrax/newspaper_issue_form_spec.rb +31 -0
- data/spec/forms/hyrax/newspaper_page_form_spec.rb +28 -0
- data/spec/forms/hyrax/newspaper_title_form_spec.rb +31 -0
- data/spec/forms/newspaper_works/newspaper_core_form_data_spec.rb +12 -0
- data/spec/helpers/newspaper_works/breadcrumb_helper_spec.rb +82 -0
- data/spec/helpers/newspaper_works_helper_spec.rb +57 -0
- data/spec/indexers/concerns/newspaper_works/indexes_full_text_spec.rb +31 -0
- data/spec/indexers/concerns/newspaper_works/indexes_place_of_publication_spec.rb +53 -0
- data/spec/indexers/concerns/newspaper_works/indexes_publication_date_range_spec.rb +39 -0
- data/spec/indexers/concerns/newspaper_works/indexes_relationships_spec.rb +86 -0
- data/spec/indexers/newspaper_article_indexer_spec.rb +29 -0
- data/spec/indexers/newspaper_issue_indexer_spec.rb +19 -0
- data/spec/indexers/newspaper_title_indexer_spec.rb +22 -0
- data/spec/indexers/newspaper_works/newspaper_core_indexer_spec.rb +23 -0
- data/spec/lib/newspaper_works/configuration_spec.rb +18 -0
- data/spec/lib/newspaper_works/data/work_derivatives_spec.rb +245 -0
- data/spec/lib/newspaper_works/data/work_file_spec.rb +99 -0
- data/spec/lib/newspaper_works/data/work_files_spec.rb +224 -0
- data/spec/lib/newspaper_works/ingest/batch_issue_ingester_spec.rb +158 -0
- data/spec/lib/newspaper_works/ingest/chronam_publication_info_spec.rb +35 -0
- data/spec/lib/newspaper_works/ingest/from_command_spec.rb +75 -0
- data/spec/lib/newspaper_works/ingest/image_ingest_issues_spec.rb +62 -0
- data/spec/lib/newspaper_works/ingest/ingest_shared.rb +75 -0
- data/spec/lib/newspaper_works/ingest/issue_images_spec.rb +65 -0
- data/spec/lib/newspaper_works/ingest/lc_publication_info_spec.rb +34 -0
- data/spec/lib/newspaper_works/ingest/ndnp/batch_ingester_spec.rb +131 -0
- data/spec/lib/newspaper_works/ingest/ndnp/batch_xml_ingest_spec.rb +64 -0
- data/spec/lib/newspaper_works/ingest/ndnp/container_ingest_spec.rb +44 -0
- data/spec/lib/newspaper_works/ingest/ndnp/container_ingester_spec.rb +126 -0
- data/spec/lib/newspaper_works/ingest/ndnp/container_metadata_spec.rb +36 -0
- data/spec/lib/newspaper_works/ingest/ndnp/issue_ingest_spec.rb +108 -0
- data/spec/lib/newspaper_works/ingest/ndnp/issue_ingester_spec.rb +155 -0
- data/spec/lib/newspaper_works/ingest/ndnp/issue_metadata_spec.rb +84 -0
- data/spec/lib/newspaper_works/ingest/ndnp/page_ingest_spec.rb +79 -0
- data/spec/lib/newspaper_works/ingest/ndnp/page_ingester_spec.rb +184 -0
- data/spec/lib/newspaper_works/ingest/ndnp/page_metadata_spec.rb +85 -0
- data/spec/lib/newspaper_works/ingest/newspaper_issue_ingest_spec.rb +83 -0
- data/spec/lib/newspaper_works/ingest/newspaper_page_ingest_spec.rb +77 -0
- data/spec/lib/newspaper_works/ingest/page_image_spec.rb +29 -0
- data/spec/lib/newspaper_works/ingest/pdf_images_spec.rb +32 -0
- data/spec/lib/newspaper_works/ingest/pdf_issue_spec.rb +29 -0
- data/spec/lib/newspaper_works/ingest/pdf_issues_spec.rb +62 -0
- data/spec/lib/newspaper_works/ingest/pdf_pages_spec.rb +110 -0
- data/spec/lib/newspaper_works/ingest/pub_finder_spec.rb +58 -0
- data/spec/lib/newspaper_works/ingest/publication_info_spec.rb +61 -0
- data/spec/lib/newspaper_works/ingest_spec.rb +45 -0
- data/spec/lib/newspaper_works/issue_pdf_composer_spec.rb +101 -0
- data/spec/lib/newspaper_works/logging_spec.rb +53 -0
- data/spec/lib/newspaper_works/page_finder_spec.rb +53 -0
- data/spec/lib/newspaper_works/resource_fetcher_spec.rb +65 -0
- data/spec/lib/newspaper_works/text_extraction/alto_reader_spec.rb +49 -0
- data/spec/lib/newspaper_works/text_extraction/page_ocr_spec.rb +84 -0
- data/spec/lib/newspaper_works/text_extraction/render_alto_spec.rb +54 -0
- data/spec/lib/newspaper_works/text_extraction/word_coords_builder_spec.rb +30 -0
- data/spec/lib/tasks/newspaper_works_rake_spec.rb +124 -0
- data/spec/misc_shared.rb +109 -0
- data/spec/model_shared.rb +134 -0
- data/spec/models/concerns/newspaper_works/blacklight_iiif_search/annotation_behavior_spec.rb +45 -0
- data/spec/models/concerns/newspaper_works/blacklight_iiif_search/search_behavior_spec.rb +27 -0
- data/spec/models/concerns/newspaper_works/newspaper_core_metadata_spec.rb +45 -0
- data/spec/models/concerns/newspaper_works/place_of_publication_behavior_spec.rb +17 -0
- data/spec/models/concerns/newspaper_works/scanned_media_metadata_spec.rb +35 -0
- data/spec/models/newspaper_article_spec.rb +73 -0
- data/spec/models/newspaper_container_spec.rb +111 -0
- data/spec/models/newspaper_issue_spec.rb +91 -0
- data/spec/models/newspaper_page_spec.rb +44 -0
- data/spec/models/newspaper_title_spec.rb +116 -0
- data/spec/models/newspaper_works/derivative_attachment_spec.rb +37 -0
- data/spec/models/newspaper_works/ingest_file_relation_spec.rb +56 -0
- data/spec/models/solr_document_spec.rb +14 -0
- data/spec/ndnp_shared.rb +48 -0
- data/spec/presenters/hyrax/newspaper_article_presenter_spec.rb +53 -0
- data/spec/presenters/hyrax/newspaper_container_presenter_spec.rb +20 -0
- data/spec/presenters/hyrax/newspaper_issue_presenter_spec.rb +65 -0
- data/spec/presenters/hyrax/newspaper_page_presenter_spec.rb +75 -0
- data/spec/presenters/hyrax/newspaper_title_presenter_spec.rb +153 -0
- data/spec/presenters/newspaper_works/iiif_manifest_presenter_behavior_spec.rb +32 -0
- data/spec/presenters/newspaper_works/issue_info_presenter_spec.rb +51 -0
- data/spec/presenters/newspaper_works/newspaper_core_presenter_spec.rb +22 -0
- data/spec/presenters/newspaper_works/persistent_url_presenter_behavior_spec.rb +24 -0
- data/spec/presenters/newspaper_works/place_of_publication_presenter_behavior_spec.rb +17 -0
- data/spec/presenters/newspaper_works/scanned_media_presenter_spec.rb +18 -0
- data/spec/presenters/newspaper_works/title_info_presenter_spec.rb +23 -0
- data/spec/routing/route_spec.rb +52 -0
- data/spec/search_builders/custom_search_builder_spec.rb +34 -0
- data/spec/search_builders/newspaper_works/newspapers_search_builder_spec.rb +33 -0
- data/spec/services/hyrax/article_genre_service_spec.rb +12 -0
- data/spec/services/hyrax/resource_types_service_spec.rb +12 -0
- data/spec/services/newspaper_works/jp2_derivative_service_spec.rb +62 -0
- data/spec/services/newspaper_works/newspaper_page_derivative_service_spec.rb +125 -0
- data/spec/services/newspaper_works/pdf_derivative_service_spec.rb +62 -0
- data/spec/services/newspaper_works/pluggable_derivative_service_spec.rb +204 -0
- data/spec/services/newspaper_works/text_extraction_derivative_service_spec.rb +82 -0
- data/spec/services/newspaper_works/text_formats_from_alto_service_spec.rb +129 -0
- data/spec/services/newspaper_works/tiff_derivative_service_spec.rb +58 -0
- data/spec/spec_helper.rb +261 -0
- data/spec/support/controller_level_helpers.rb +28 -0
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +22 -0
- data/spec/views/catalog/_index_gallery_newspaper_page_wrapper.html.erb_spec.rb +36 -0
- data/spec/views/catalog/_index_header_list_newspaper_page.html.erb_spec.rb +26 -0
- data/spec/views/catalog/_thumbnail_list_newspaper_page.html.erb_spec.rb +35 -0
- data/spec/views/hyrax/newspaper_titles/_all_front_pages_form.html.erb_spec.rb +16 -0
- data/spec/views/hyrax/newspaper_titles/_issue_search_form.html.erb_spec.rb +33 -0
- data/spec/views/hyrax/newspaper_titles/_issues_calendar.html.erb_spec.rb +37 -0
- data/spec/views/hyrax/newspaper_titles/show.html.erb_spec.rb +87 -0
- data/spec/views/newspaper_works/base/_attribute_rows.html.erb_spec.rb +60 -0
- data/spec/views/newspaper_works/base/_newspaper_hierarchy.html.erb_spec.rb +80 -0
- data/spec/views/newspaper_works/base/_show.html.erb_spec.rb +78 -0
- data/spec/views/newspaper_works/newspapers_search/search.html.erb_spec.rb +54 -0
- data/spec/views/records/edit_fields/_place_of_publication.html.erb_spec.rb +26 -0
- data/tasks/newspaperworks_dev.rake +26 -0
- data/test/integration/navigation_test.rb +7 -0
- data/test/lib/generators/newspaper_works/install_generator_test.rb +16 -0
- data/test/newspaper_works_test.rb +7 -0
- data/test/test_helper.rb +17 -0
- data/tmp/.keep +0 -0
- metadata +1037 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><mods xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd" version="3.6"/>
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><mods xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd" version="3.6"><titleInfo><title>Rocky Mountain news</title></titleInfo><titleInfo type="alternative" displayLabel="Saturday issues for Apr. 7, 2001- called:"><title>Weekend Rocky Mountain news & The Denver post</title></titleInfo><titleInfo type="uniform"><title>Rocky Mountain news (Denver, Colo. : 1937)</title></titleInfo><typeOfResource>text</typeOfResource><genre authority="marcgt">newspaper</genre><genre authority="rdacontent">text</genre><genre authority="fast">Newspapers.</genre><originInfo><place><placeTerm type="code" authority="marccountry">cou</placeTerm></place><place><placeTerm type="text">Denver, Colo</placeTerm></place><publisher>Denver Pub. Co.</publisher><dateIssued>[1937-2009]</dateIssued><dateIssued point="start" encoding="marc">1937</dateIssued><dateIssued point="end" encoding="marc">2009</dateIssued><issuance>serial</issuance><frequency>Daily</frequency><frequency authority="marcfrequency">Daily</frequency></originInfo><language><languageTerm type="code" authority="iso639-2b">eng</languageTerm></language><physicalDescription><form authority="marcform">print</form><extent>volumes</extent><form type="media" authority="rdamedia">unmediated</form><form type="carrier" authority="rdacarrier">volume</form></physicalDescription><note type="date/sequential designation">Vol. 78, no. 213 (Aug. 1, 1937)-v. 80, no. 130 (May 10, 1939); 80th year, no. 131 (May 11, 1939)-Feb. 27, 2009.</note><note>Apr. 23, 1959 issue called also "Centennial edition."</note><note>Feb. 27, 2009 issue also called "Final edition."</note><note type="additional physical form">Available on microfilm through Dec. 31, 1974 from the Colorado Historical Society.</note><note type="additional physical form">Also issued on microfilm from University Microfilms International, and Library of Congress Photoduplication Service.</note><note>Weekend issues for Apr. 7, 2001- published jointly with: Denver post (Denver, Colo. : 1901).</note><subject><geographicCode authority="marcgac">n-us-co</geographicCode></subject><subject authority="lcsh"><geographic>Denver (Colo.)</geographic><genre>Newspapers</genre></subject><subject authority="fast"><geographic>Colorado</geographic><geographic>Denver</geographic></subject><subject><hierarchicalGeographic><country>United States</country><state>Colorado</state><county>Denver</county><city>Denver</city></hierarchicalGeographic></subject><classification authority="lcc">Newspaper 7221</classification><classification authority="lcc">AN2.D4 R63</classification><classification authority="lcc">AN</classification><relatedItem type="preceding"><titleInfo><title>Denver Rocky Mountain news</title></titleInfo><identifier type="local">(DLC)sn 83016742</identifier><identifier type="local">(OCoLC)10089245</identifier></relatedItem><identifier type="lccn">sn 82014496</identifier><identifier type="oclc">ocm03946163</identifier><identifier type="stock number">400 West Colfax Ave., Denver, C0 80204</identifier><recordInfo><descriptionStandard>aacr</descriptionStandard><recordContentSource authority="marcorg">COA</recordContentSource><recordCreationDate encoding="marc">780602</recordCreationDate><recordChangeDate encoding="iso8601">20181129155918.0</recordChangeDate><recordIdentifier>11256230</recordIdentifier><recordOrigin>Converted from MARCXML to MODS version 3.6 using MARC21slim2MODS3-6.xsl
|
|
2
|
+
(Revision 1.119 2018/06/21)</recordOrigin><languageOfCataloging><languageTerm type="code" authority="iso639-2b">eng</languageTerm></languageOfCataloging></recordInfo></mods>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><mods xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd" version="3.6"/>
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><mods xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd" version="3.6"><titleInfo><nonSort xml:space="preserve">The </nonSort><title>Salt Lake daily tribune</title></titleInfo><titleInfo type="alternative"><title>Daily tribune</title></titleInfo><typeOfResource>text</typeOfResource><genre authority="marcgt">newspaper</genre><genre authority="rdacontent">text</genre><genre authority="fast">Newspapers.</genre><originInfo><place><placeTerm type="code" authority="marccountry">utu</placeTerm></place><place><placeTerm type="text">Salt Lake City, U.T. [i.e. Utah]</placeTerm></place><publisher>Tribune Pub. Co.</publisher><dateIssued>1872-1890</dateIssued><dateIssued point="start" encoding="marc">1872</dateIssued><dateIssued point="end" encoding="marc">1890</dateIssued><issuance>serial</issuance><frequency>Daily (except Monday), July 27, 1873-Feb. 23, 1890</frequency><frequency>Daily (except Sunday), Apr. 15, 1872-July 26, 1873</frequency><frequency authority="marcfrequency">Daily</frequency></originInfo><language><languageTerm type="code" authority="iso639-2b">eng</languageTerm></language><physicalDescription><form authority="marcform">print</form><extent>36 volumes</extent><form type="media" authority="rdamedia">unmediated</form><form type="carrier" authority="rdacarrier">volume</form></physicalDescription><note type="date/sequential designation">Vol. 3, no. 2 (Apr. 15, 1872)-v. 38, no. 114 (Feb. 23, 1890).</note><note type="numbering">Continues the numbering of: Salt Lake daily tribune and Utah mining gazette.</note><note type="numbering">None published Jan. 2 and Dec. 26.</note><note type="additional physical form">Also issued on microfilm from Universal Microfilming Corp.</note><note type="language">Some 1874 issues contain items in Danish.</note><note>Weekly editions: Weekly Salt Lake tribune 1872-1873; Salt Lake leader (Salt Lake City, Utah : 1873), 1873; Salt Lake tribune (Salt Lake City, Utah : 1873), 1873-1874; Salt Lake weekly tribune (Salt Lake City, Utah : 1874), 1874-1890.</note><subject><geographicCode authority="marcgac">n-us-ut</geographicCode></subject><subject authority="lcsh"><geographic>Salt Lake City (Utah)</geographic><genre>Newspapers</genre></subject><subject authority="fast"><geographic>Utah</geographic><geographic>Salt Lake City</geographic></subject><subject><hierarchicalGeographic><country>United States</country><state>Utah</state><county>Salt Lake</county><city>Salt Lake City</city></hierarchicalGeographic></subject><classification authority="lcc">Newspaper</classification><classification authority="lcc">AN</classification><relatedItem type="otherVersion"><titleInfo><title>Weekly Salt Lake tribune</title></titleInfo><identifier type="local">(DLC)sn 86071525</identifier></relatedItem><relatedItem type="otherVersion"><titleInfo><title>Salt Lake leader (Salt Lake City, Utah : 1873)</title></titleInfo><identifier type="local">(DLC)sn 85058151</identifier></relatedItem><relatedItem type="otherVersion"><titleInfo><title>Salt Lake tribune (Salt Lake City, Utah : 1873)</title></titleInfo><identifier type="local">(DLC)sn 83021454</identifier></relatedItem><relatedItem type="otherVersion"><titleInfo><title>Salt Lake weekly tribune (Salt Lake City, Utah : 1874)</title></titleInfo><identifier type="local">(DLC)sn 85058152</identifier></relatedItem><relatedItem type="preceding"><titleInfo><title>Salt Lake daily tribune and Utah mining gazette</title></titleInfo><identifier type="local">(DLC)sn 85058026</identifier><identifier type="local">(OCoLC)11735155</identifier></relatedItem><relatedItem type="succeeding"><titleInfo><title>Salt Lake tribune (Salt Lake City, Utah : 1890)</title></titleInfo><identifier type="local">(DLC)sn 83045396</identifier><identifier type="local">(OCoLC)8086936</identifier></relatedItem><identifier type="lccn">sn 83021453</identifier><identifier type="oclc">ocm10170377</identifier><recordInfo><descriptionStandard>aacr</descriptionStandard><recordContentSource authority="marcorg">NPX</recordContentSource><recordCreationDate encoding="marc">831129</recordCreationDate><recordChangeDate encoding="iso8601">20181124092151.0</recordChangeDate><recordIdentifier>11268324</recordIdentifier><recordOrigin>Converted from MARCXML to MODS version 3.6 using MARC21slim2MODS3-6.xsl
|
|
2
|
+
(Revision 1.119 2018/06/21)</recordOrigin><languageOfCataloging><languageTerm type="code" authority="iso639-2b">eng</languageTerm></languageOfCataloging></recordInfo></mods>
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><mods xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd" version="3.6"><titleInfo><nonSort xml:space="preserve">The </nonSort><title>Salt Lake tribune</title></titleInfo><titleInfo type="uniform"><title>Salt Lake tribune (Salt Lake City, Utah : 1890)</title></titleInfo><typeOfResource>text</typeOfResource><genre authority="marcgt">newspaper</genre><genre authority="rdacontent">text</genre><genre authority="fast">Newspapers.</genre><originInfo><place><placeTerm type="code" authority="marccountry">utu</placeTerm></place><place><placeTerm type="text">Salt Lake City, Utah</placeTerm></place><publisher>Tribune Pub. Co.</publisher><dateIssued>1890-</dateIssued><dateIssued point="start" encoding="marc">1890</dateIssued><dateIssued point="end" encoding="marc">9999</dateIssued><issuance>serial</issuance><frequency>Daily</frequency><frequency authority="marcfrequency">Daily</frequency></originInfo><language><languageTerm type="code" authority="iso639-2b">eng</languageTerm></language><physicalDescription><form authority="marcform">print</form><extent>volumes : illustrations ; 54-57 cm</extent><form type="media" authority="rdamedia">unmediated</form><form type="carrier" authority="rdacarrier">volume</form></physicalDescription><note type="date/sequential designation">Vol. 38, no. 115 (Feb. 25, 1890)-</note><note>Publisher varies.</note><note type="numbering">Continues the numbering of: Salt Lake daily tribune.</note><note type="additional physical form">Archived issues are available in digital format as part of the Library of Congress Chronicling America online collection.</note><note>Semiweekly ed.: Salt Lake semi-weekly tribune, 1894-1902.</note><note>Weekly ed.: Salt Lake weekly tribune (Salt Lake City, Utah : 1902), 1902-<>.</note><note>Other eds.: Salt Lake tribune (Salt Lake City, Utah : Idaho ed.), 1954-1973, and: Salt Lake tribune (Salt Lake City, Utah : Metropolitan ed.), 1960-1972, and: Salt Lake tribune (Salt Lake City, Utah : State ed.), 1954-1974.</note><subject><geographicCode authority="marcgac">n-us-ut</geographicCode></subject><subject authority="lcsh"><geographic>Salt Lake City (Utah)</geographic><genre>Newspapers</genre></subject><subject authority="fast"><geographic>Utah</geographic><geographic>Salt Lake City</geographic></subject><subject><hierarchicalGeographic><country>United States</country><state>Utah</state><county>Salt Lake</county><city>Salt Lake City</city></hierarchicalGeographic></subject><classification authority="lcc">Newspaper</classification><classification authority="ddc" edition="14">071</classification><relatedItem type="otherVersion"><titleInfo><title>Salt Lake semi-weekly tribune</title></titleInfo><identifier type="local">(DLC)sn 84024748</identifier><identifier type="local">(OCoLC)11095194</identifier></relatedItem><relatedItem type="otherVersion"><titleInfo><title>Salt Lake weekly tribune (Salt Lake City, Utah : 1902)</title></titleInfo><identifier type="local">(DLC)sn 84024749</identifier><identifier type="local">(OCoLC)11095188</identifier></relatedItem><relatedItem type="otherVersion"><titleInfo><title>Salt Lake tribune (Salt Lake City, Utah : Idaho ed.)</title></titleInfo><identifier type="local">(DLC)sn 85058248</identifier><identifier type="local">(OCoLC)12686122</identifier></relatedItem><relatedItem type="otherVersion"><titleInfo><title>Salt Lake tribune (Salt Lake City, Utah : Metropolitan ed.)</title></titleInfo><identifier type="local">(DLC)sn 85058249</identifier><identifier type="local">(OCoLC)12686195</identifier></relatedItem><relatedItem type="otherVersion"><titleInfo><title>Salt Lake tribune (Salt Lake City, Utah : State ed.)</title></titleInfo><identifier type="local">(DLC)sn 85058250</identifier><identifier type="local">(OCoLC)12686023</identifier></relatedItem><relatedItem type="preceding"><titleInfo><title>Salt Lake daily tribune</title></titleInfo><identifier type="local">(DLC)sn 83021453</identifier><identifier type="local">(OCoLC)10170377</identifier></relatedItem><identifier type="issn">0746-3502</identifier><identifier type="issn-l">0746-3502</identifier><identifier type="lccn">sn 83045396</identifier><identifier type="oclc">ocm08086936</identifier><identifier type="stock number">The Salt Lake Tribune, 143 S. Main, Salt Lake City, UT 84111</identifier><recordInfo><descriptionStandard>aacr</descriptionStandard><recordContentSource authority="marcorg">TXG</recordContentSource><recordCreationDate encoding="marc">820122</recordCreationDate><recordChangeDate encoding="iso8601">20190309090740.0</recordChangeDate><recordIdentifier>11269806</recordIdentifier><recordOrigin>Converted from MARCXML to MODS version 3.6 using MARC21slim2MODS3-6.xsl
|
|
2
|
+
(Revision 1.119 2018/06/21)</recordOrigin><languageOfCataloging><languageTerm type="code" authority="iso639-2b">eng</languageTerm></languageOfCataloging></recordInfo></mods>
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><mods xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd" version="3.6"><titleInfo><title>Daily national Democrat</title></titleInfo><titleInfo type="uniform"><title>Daily national Democrat (Marysville, Calif.)</title></titleInfo><typeOfResource>text</typeOfResource><genre authority="marcgt">newspaper</genre><genre authority="rdacontent">text</genre><genre authority="fast">Newspapers.</genre><originInfo><place><placeTerm type="code" authority="marccountry">cau</placeTerm></place><place><placeTerm type="text">Marysville, Calif</placeTerm></place><publisher>A.S. Randall & Co.</publisher><dateIssued>-1861</dateIssued><dateIssued point="start" encoding="marc">1858</dateIssued><dateIssued point="end" encoding="marc">1861</dateIssued><issuance>serial</issuance><frequency>Daily</frequency><frequency authority="marcfrequency">Daily</frequency></originInfo><language><languageTerm type="code" authority="iso639-2b">eng</languageTerm></language><physicalDescription><form authority="marcform">print</form><extent>volumes</extent><form type="media" authority="rdamedia">unmediated</form><form type="carrier" authority="rdacarrier">volume</form></physicalDescription><note type="date/sequential designation">Began in 1858.</note><note type="date/sequential designation">-v. 7, no. 65 (Oct. 27, 1861).</note><note>Editor: John R. Ridge, <1859>.</note><note xmlns:xlink="http://www.w3.org/1999/xlink" type="additional physical form" xlink:href="http://cbsr.ucr.edu">Master negatives are available for duplication from: California Newspaper Microfilm Archive; positive copies may be purchased by the reel; for further information consult the CNMA at:</note><note type="additional physical form">Archived issues are available in digital format from the Library of Congress Chronicling America online collection.</note><subject><geographicCode authority="marcgac">n-us-ca</geographicCode></subject><subject authority="lcsh"><geographic>Marysville (Calif.)</geographic><genre>Newspapers</genre></subject><subject authority="fast"><geographic>California</geographic><geographic>Marysville</geographic></subject><subject><hierarchicalGeographic><country>United States</country><state>California</state><county>Yuba</county><city>Marysville</city></hierarchicalGeographic></subject><classification authority="lcc">Newspaper</classification><classification authority="lcc">AP2 .M39453</classification><classification authority="ddc" edition="23">071.3</classification><relatedItem type="otherVersion"><titleInfo><title>Weekly national Democrat (Marysville, Calif.)</title></titleInfo><identifier type="local">(DLC)sn 95068828</identifier><identifier type="local">(OCoLC)33807781</identifier></relatedItem><relatedItem type="otherFormat" otherType="Online version:" displayLabel="Online version:"><titleInfo><title>Daily national Democrat (Marysville, Calif.)</title></titleInfo><identifier type="issn">2642-0759</identifier><identifier type="local">(DLC) 2019271599</identifier><identifier type="local">(OCoLC)1091589397</identifier></relatedItem><relatedItem type="preceding"><titleInfo><title>Marysville daily news</title></titleInfo><identifier type="local">(DLC)sn 94051019</identifier><identifier type="local">(OCoLC)30043558</identifier></relatedItem><relatedItem type="succeeding"><titleInfo><title>Marysville daily appeal</title></titleInfo><identifier type="local">(DLC)sn 84027437</identifier><identifier type="local">(OCoLC)11148970</identifier></relatedItem><identifier type="issn">2642-0740</identifier><identifier type="lccn">sn 84038814</identifier><identifier type="oclc">ocm11534817</identifier><recordInfo><descriptionStandard>aacr</descriptionStandard><recordContentSource authority="marcorg">NPX</recordContentSource><recordCreationDate encoding="marc">841231</recordCreationDate><recordChangeDate encoding="iso8601">20190406075829.0</recordChangeDate><recordIdentifier>20917217</recordIdentifier><recordOrigin>Converted from MARCXML to MODS version 3.6 using MARC21slim2MODS3-6.xsl
|
|
2
|
+
(Revision 1.119 2018/06/21)</recordOrigin><languageOfCataloging><languageTerm type="code" authority="iso639-2b">eng</languageTerm></languageOfCataloging></recordInfo></mods>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><mods xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd" version="3.6"/>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><mods xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd" version="3.6"/>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><mods xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-6.xsd" version="3.6"/>
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
{
|
|
2
|
+
"urls" : [
|
|
3
|
+
{
|
|
4
|
+
"url": "https://lccn.loc.gov/sn93059126/mods",
|
|
5
|
+
"local": "lccn/sn93059126"
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
"url": "https://lccn.loc.gov/sn83045396/mods",
|
|
9
|
+
"local": "lccn/sn83045396"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"url": "https://lccn.loc.gov/sn83020109/mods",
|
|
13
|
+
"local": "lccn/sn83020109"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"url": "https://lccn.loc.gov/sn83021453/mods",
|
|
17
|
+
"local": "lccn/sn83021453"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"url": "https://lccn.loc.gov/sn94051019/mods",
|
|
21
|
+
"local": "lccn/sn94051019"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"url": "https://lccn.loc.gov/sn99999999/mods",
|
|
25
|
+
"local": "lccn/sn99999999"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"url": "https://lccn.loc.gov/sn2099999999/mods",
|
|
29
|
+
"local": "lccn/sn2099999999"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"url": "https://lccn.loc.gov/sn82014496/mods",
|
|
33
|
+
"local": "lccn/sn82014496"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"url": "https://lccn.loc.gov/sn84038814/mods",
|
|
37
|
+
"local": "lccn/sn84038814"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"url": "http://api.geonames.org/search?q=Chicopee&username=newspaper_works",
|
|
41
|
+
"local": "geonames/Chicopee"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"url": "http://api.geonames.org/search?q=Salt%20Lake%20City,%20Utah&username=newspaper_works",
|
|
45
|
+
"local": "geonames/SLC"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"url": "http://api.geonames.org/search?q=Marysville,%20Calif&username=newspaper_works",
|
|
49
|
+
"local": "geonames/Marysville"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"url": "http://api.geonames.org/search?q=Denver,%20Colorado&username=newspaper_works",
|
|
53
|
+
"local": "geonames/Denver"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"url": "http://api.geonames.org/search?q=Marysville,%20California&username=newspaper_works",
|
|
57
|
+
"local": "geonames/Marysville2"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"url": "https://chroniclingamerica.loc.gov/lccn/sn84038814.rdf",
|
|
61
|
+
"local": "chronam/sn84038814.rdf"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"url": "https://chroniclingamerica.loc.gov/lccn/sn93059126.rdf",
|
|
65
|
+
"local": "chronam/sn93059126.rdf"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"url": "https://chroniclingamerica.loc.gov/lccn/sn94051019.rdf",
|
|
69
|
+
"local": "chronam/sn94051019.rdf"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"url": "https://chroniclingamerica.loc.gov/lccn/sn99999999.rdf",
|
|
73
|
+
"local": "chronam/http404-expected",
|
|
74
|
+
"status": 404
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"url": "https://chroniclingamerica.loc.gov/lccn/sn2099999999.rdf",
|
|
78
|
+
"local": "chronam/http404-expected",
|
|
79
|
+
"status": 404
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'model_shared'
|
|
3
|
+
|
|
4
|
+
RSpec.describe Hyrax::NewspaperArticleForm do
|
|
5
|
+
let(:work) { NewspaperArticle.new }
|
|
6
|
+
let(:form) { described_class.new(work, nil, nil) }
|
|
7
|
+
|
|
8
|
+
describe "#required_fields" do
|
|
9
|
+
subject { form.required_fields }
|
|
10
|
+
|
|
11
|
+
it { is_expected.to eq [:title, :resource_type, :language, :held_by] }
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
describe "#primary_terms" do
|
|
15
|
+
subject { form.primary_terms }
|
|
16
|
+
|
|
17
|
+
it { is_expected.to eq [:title, :resource_type, :language, :held_by] }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
describe "#secondary_terms" do
|
|
21
|
+
subject { form.secondary_terms }
|
|
22
|
+
|
|
23
|
+
it do
|
|
24
|
+
is_expected.to eq [:creator, :contributor, :description, :license,
|
|
25
|
+
:rights_statement, :publisher, :subject, :identifier,
|
|
26
|
+
:place_of_publication, :issn, :lccn, :oclcnum,
|
|
27
|
+
:alternative_title, :genre, :author, :photographer,
|
|
28
|
+
:publication_date, :volume, :edition_number,
|
|
29
|
+
:edition_name, :issue_number, :geographic_coverage,
|
|
30
|
+
:extent, :page_number, :section]
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'model_shared'
|
|
3
|
+
|
|
4
|
+
RSpec.describe Hyrax::NewspaperContainerForm do
|
|
5
|
+
let(:work) { NewspaperContainer.new }
|
|
6
|
+
let(:form) { described_class.new(work, nil, nil) }
|
|
7
|
+
|
|
8
|
+
describe "#required_fields" do
|
|
9
|
+
subject { form.required_fields }
|
|
10
|
+
|
|
11
|
+
it { is_expected.to eq [:title, :resource_type, :language, :held_by] }
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
describe "#primary_terms" do
|
|
15
|
+
subject { form.primary_terms }
|
|
16
|
+
|
|
17
|
+
it { is_expected.to eq [:title, :resource_type, :language, :held_by] }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
describe "#secondary_terms" do
|
|
21
|
+
subject { form.secondary_terms }
|
|
22
|
+
|
|
23
|
+
it do
|
|
24
|
+
is_expected.to eq [:license, :rights_statement, :publisher, :identifier,
|
|
25
|
+
:place_of_publication, :issn, :lccn, :oclcnum,
|
|
26
|
+
:alternative_title, :extent,
|
|
27
|
+
:publication_date_start, :publication_date_end]
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'model_shared'
|
|
3
|
+
|
|
4
|
+
RSpec.describe Hyrax::NewspaperIssueForm do
|
|
5
|
+
let(:work) { NewspaperIssue.new }
|
|
6
|
+
let(:form) { described_class.new(work, nil, nil) }
|
|
7
|
+
|
|
8
|
+
describe "#required_fields" do
|
|
9
|
+
subject { form.required_fields }
|
|
10
|
+
|
|
11
|
+
it { is_expected.to eq [:title, :resource_type, :language, :held_by] }
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
describe "#primary_terms" do
|
|
15
|
+
subject { form.primary_terms }
|
|
16
|
+
|
|
17
|
+
it { is_expected.to eq [:title, :resource_type, :language, :held_by] }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
describe "#secondary_terms" do
|
|
21
|
+
subject { form.secondary_terms }
|
|
22
|
+
|
|
23
|
+
it do
|
|
24
|
+
is_expected.to eq [:license, :rights_statement, :publisher, :identifier,
|
|
25
|
+
:place_of_publication, :issn, :lccn, :oclcnum,
|
|
26
|
+
:alternative_title, :volume, :edition_number,
|
|
27
|
+
:edition_name, :issue_number, :extent,
|
|
28
|
+
:publication_date]
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'model_shared'
|
|
3
|
+
|
|
4
|
+
RSpec.describe Hyrax::NewspaperPageForm do
|
|
5
|
+
let(:work) { NewspaperPage.new }
|
|
6
|
+
let(:form) { described_class.new(work, nil, nil) }
|
|
7
|
+
|
|
8
|
+
describe "#required_fields" do
|
|
9
|
+
subject { form.required_fields }
|
|
10
|
+
|
|
11
|
+
it { is_expected.to eq [:title] }
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
describe "#primary_terms" do
|
|
15
|
+
subject { form.primary_terms }
|
|
16
|
+
|
|
17
|
+
it { is_expected.to eq [:title] }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
describe "#secondary_terms" do
|
|
21
|
+
subject { form.secondary_terms }
|
|
22
|
+
|
|
23
|
+
it do
|
|
24
|
+
is_expected.to eq [:identifier, :height, :width, :text_direction,
|
|
25
|
+
:page_number, :section]
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'model_shared'
|
|
3
|
+
|
|
4
|
+
RSpec.describe Hyrax::NewspaperTitleForm do
|
|
5
|
+
let(:work) { NewspaperTitle.new }
|
|
6
|
+
let(:form) { described_class.new(work, nil, nil) }
|
|
7
|
+
|
|
8
|
+
describe "#required_fields" do
|
|
9
|
+
subject { form.required_fields }
|
|
10
|
+
|
|
11
|
+
it { is_expected.to eq [:title, :resource_type, :language, :held_by] }
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
describe "#primary_terms" do
|
|
15
|
+
subject { form.primary_terms }
|
|
16
|
+
|
|
17
|
+
it { is_expected.to eq [:title, :resource_type, :language, :held_by] }
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
describe "#secondary_terms" do
|
|
21
|
+
subject { form.secondary_terms }
|
|
22
|
+
|
|
23
|
+
it do
|
|
24
|
+
is_expected.to eq [:license, :rights_statement, :publisher, :identifier,
|
|
25
|
+
:place_of_publication, :issn, :lccn, :oclcnum,
|
|
26
|
+
:alternative_title, :edition_name, :frequency,
|
|
27
|
+
:preceded_by, :succeeded_by,
|
|
28
|
+
:publication_date_start, :publication_date_end]
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
RSpec.describe NewspaperWorks::NewspaperCoreFormData do
|
|
4
|
+
before do
|
|
5
|
+
allow(described_class).to receive(:model_class).and_return(NewspaperArticle)
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
describe '.build_permitted_params' do
|
|
9
|
+
subject { described_class.build_permitted_params }
|
|
10
|
+
it { is_expected.to include(place_of_publication_attributes: [:id, :_destroy]) }
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
RSpec.describe NewspaperWorks::BreadcrumbHelper do
|
|
3
|
+
let(:solr_document) { SolrDocument.new(attributes) }
|
|
4
|
+
let(:attributes) do
|
|
5
|
+
{
|
|
6
|
+
'publication_id_ssi' => 'foo',
|
|
7
|
+
'publication_title_ssi' => 'bar',
|
|
8
|
+
'issue_id_ssi' => 'baz',
|
|
9
|
+
'issue_title_ssi' => 'quux',
|
|
10
|
+
'is_following_page_of_ssi' => 'one',
|
|
11
|
+
'is_preceding_page_of_ssi' => 'three'
|
|
12
|
+
}
|
|
13
|
+
end
|
|
14
|
+
let(:presenter) { Hyrax::NewspaperPagePresenter.new(solr_document, nil) }
|
|
15
|
+
let(:object_type) { :issue }
|
|
16
|
+
|
|
17
|
+
describe '#newspaper_breadcrumbs' do
|
|
18
|
+
it 'returns an array of links' do
|
|
19
|
+
allow(presenter).to receive(:title).and_return(["2018-05-08: Page 1"])
|
|
20
|
+
breadcrumbs = helper.newspaper_breadcrumbs(presenter)
|
|
21
|
+
expect(breadcrumbs.length).to eq 3
|
|
22
|
+
expect(breadcrumbs[0]).to include('href="/concern/newspaper_titles/foo"')
|
|
23
|
+
expect(breadcrumbs[1]).to include('href="/concern/newspaper_issues/baz"')
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
it 'returns a filtered version of a newspaper page title' do
|
|
27
|
+
allow(presenter).to receive(:title).and_return(["2018-05-08: Page 1"])
|
|
28
|
+
breadcrumbs = helper.newspaper_breadcrumbs(presenter)
|
|
29
|
+
expect(breadcrumbs[-1]).to eq("Page 1")
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
it 'returns a filtered version of the newspaper issue title' do
|
|
33
|
+
allow(presenter).to receive(:title).and_return(["2018-05-18"])
|
|
34
|
+
breadcrumbs = helper.newspaper_breadcrumbs(presenter)
|
|
35
|
+
expect(breadcrumbs[-1]).to eq("May 18, 2018")
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
describe '#create_breadcrumb_link' do
|
|
40
|
+
it 'returns an array of links' do
|
|
41
|
+
array_for_spec = helper.create_breadcrumb_link(object_type, presenter)
|
|
42
|
+
expect(array_for_spec.class).to eq Array
|
|
43
|
+
expect(array_for_spec.first).to include('href="/concern/newspaper_issues/baz"')
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
describe '#breadcrumb_object_link' do
|
|
48
|
+
it 'returns a link a newspaper object' do
|
|
49
|
+
link_for_spec = helper.breadcrumb_object_link(object_type, 'foo', 'bar')
|
|
50
|
+
expect(link_for_spec).to include('href="/concern/newspaper_issues/foo"')
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
describe 'breadcrumb_object_title' do
|
|
55
|
+
it 'returns the page number portion of a string if a page number is included' do
|
|
56
|
+
title_for_spec = helper.breadcrumb_object_title("2018-05-08: Page 1")
|
|
57
|
+
expect(title_for_spec).to eq('Page 1')
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
it 'returns a formatted date if a date is passed without a page number' do
|
|
61
|
+
title_for_spec = helper.breadcrumb_object_title("2018-05-18")
|
|
62
|
+
expect(title_for_spec).to eq("May 18, 2018")
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
it 'returns the original string if neither a page number or date is passed' do
|
|
66
|
+
title_for_spec = helper.breadcrumb_object_title("Foo")
|
|
67
|
+
expect(title_for_spec).to eq("Foo")
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
describe '#previous_page_link' do
|
|
72
|
+
it 'returns a link to the previous page' do
|
|
73
|
+
expect(helper.previous_page_link(presenter)).to include('href="/concern/newspaper_pages/one"')
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
describe '#next_page_link' do
|
|
78
|
+
it 'returns a link to the next page' do
|
|
79
|
+
expect(helper.next_page_link(presenter)).to include('href="/concern/newspaper_pages/three')
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
end
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
RSpec.describe NewspaperWorksHelper do
|
|
4
|
+
let(:query_term) { 'suffrage' }
|
|
5
|
+
let(:query_params_hash) { { q: query_term } }
|
|
6
|
+
let(:document) { build(:newspaper_page_solr_document) }
|
|
7
|
+
|
|
8
|
+
describe '#iiif_search_anchor' do
|
|
9
|
+
it 'returns the correct string' do
|
|
10
|
+
expect(helper.iiif_search_anchor({})).to eq nil
|
|
11
|
+
expect(helper.iiif_search_anchor(query_params_hash)).to eq("?h=#{query_term}")
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
describe '#search_query' do
|
|
16
|
+
it 'returns the correct string' do
|
|
17
|
+
expect(helper.search_query({})).to eq nil
|
|
18
|
+
expect(helper.search_query(query_params_hash)).to eq(query_term)
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
describe '#render_newspaper_thumbnail_tag' do
|
|
23
|
+
it 'returns a thumbnail link with image and iiif search anchor' do
|
|
24
|
+
result = helper.render_newspaper_thumbnail_tag(document, query_params_hash)
|
|
25
|
+
expect(result).to include "concern/newspaper_pages/#{document[:id]}#?h=#{query_term}"
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
describe '#newspaper_thumbnail_tag' do
|
|
30
|
+
it 'returns a thumbnail' do
|
|
31
|
+
result = helper.newspaper_thumbnail_tag(document)
|
|
32
|
+
expect(result).to include "img src=\"#{document[:thumbnail_path_ss]}"
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
describe '#highlight_matches' do
|
|
37
|
+
let(:hl_fl) { 'all_text_tsimv' }
|
|
38
|
+
|
|
39
|
+
describe 'when highlighting is present in Solr response' do
|
|
40
|
+
before do
|
|
41
|
+
allow(document).to receive(:highlight_field).with(hl_fl).and_return(['foo <em>bar</em> baz'.html_safe])
|
|
42
|
+
end
|
|
43
|
+
it 'returns the matching terms when highlighting present' do
|
|
44
|
+
expect(helper.highlight_matches(document, hl_fl, 'em')).to eq 'bar'
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
describe 'when highlighting is not present' do
|
|
49
|
+
before do
|
|
50
|
+
allow(document).to receive(:highlight_field).with(hl_fl).and_return([])
|
|
51
|
+
end
|
|
52
|
+
it 'returns the matching terms when highlighting present' do
|
|
53
|
+
expect(helper.highlight_matches(document, hl_fl, 'em')).to eq nil
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'misc_shared'
|
|
3
|
+
|
|
4
|
+
RSpec.describe NewspaperWorks::IndexesFullText do
|
|
5
|
+
include_context "shared setup"
|
|
6
|
+
|
|
7
|
+
let(:indexer) { NewspaperPageIndexer.new(sample_work) }
|
|
8
|
+
let(:solr_document) { indexer.generate_solr_document }
|
|
9
|
+
let(:work) { sample_work }
|
|
10
|
+
|
|
11
|
+
before { mk_txt_derivative(work) }
|
|
12
|
+
|
|
13
|
+
describe "#index_full_text" do
|
|
14
|
+
before { indexer.index_full_text(work, solr_document) }
|
|
15
|
+
it "makes a solr_document with full text to index" do
|
|
16
|
+
expect(solr_document.keys).to include 'all_text_timv'
|
|
17
|
+
expect(solr_document.keys).to include 'all_text_tsimv'
|
|
18
|
+
expect(solr_document['all_text_tsimv']).to eq sample_text
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
describe "fulltext discoverability" do
|
|
23
|
+
it "returns the solr_document matching a query" do
|
|
24
|
+
# save will trigger indexing
|
|
25
|
+
expect(work.save).to be true
|
|
26
|
+
# ...and we expect full text to be indexed:
|
|
27
|
+
result = NewspaperPage.where(all_text_timv: 'enigmas')
|
|
28
|
+
expect(result).to include work
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
RSpec.describe NewspaperWorks::IndexesPlaceOfPublication do
|
|
4
|
+
let(:ntitle) { NewspaperTitle.new }
|
|
5
|
+
let(:test_indexer) { NewspaperTitleIndexer.new(ntitle) }
|
|
6
|
+
let(:geonames_id) { '4950065' }
|
|
7
|
+
let(:geonames_uri) { "http://sws.geonames.org/#{geonames_id}/" }
|
|
8
|
+
let(:pop) { Hyrax::ControlledVocabularies::Location.new(geonames_uri) }
|
|
9
|
+
# stub this, so we don't make repeated calls to GeoNames API
|
|
10
|
+
let(:geodata) { test_indexer.get_geodata(geonames_id) }
|
|
11
|
+
|
|
12
|
+
describe '#index_pop' do
|
|
13
|
+
let(:solr_doc) { {} }
|
|
14
|
+
before do
|
|
15
|
+
allow(test_indexer).to receive(:get_geodata).and_return(geodata)
|
|
16
|
+
ntitle.place_of_publication = pop
|
|
17
|
+
test_indexer.index_pop(ntitle, solr_doc)
|
|
18
|
+
end
|
|
19
|
+
it 'sets the geodata fields correctly' do
|
|
20
|
+
expect(solr_doc['place_of_publication_state_sim'].first).not_to be_falsey
|
|
21
|
+
expect(solr_doc['place_of_publication_llsim'].first).not_to be_falsey
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
describe '#add_geodata_fields' do
|
|
26
|
+
let(:solr_doc) { {} }
|
|
27
|
+
before { test_indexer.add_geodata_fields(solr_doc) }
|
|
28
|
+
it 'adds the geodata fields' do
|
|
29
|
+
expect(solr_doc['place_of_publication_county_sim'].class).to eq(Array)
|
|
30
|
+
expect(solr_doc['place_of_publication_label_tesim'].class).to eq(Array)
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
describe '#index_pop_geodata' do
|
|
35
|
+
let(:solr_doc) { {} }
|
|
36
|
+
before do
|
|
37
|
+
test_indexer.add_geodata_fields(solr_doc)
|
|
38
|
+
test_indexer.index_pop_geodata(geodata, solr_doc)
|
|
39
|
+
end
|
|
40
|
+
it 'parses the geodata correctly' do
|
|
41
|
+
expect(solr_doc['place_of_publication_city_sim']).to include('Salem')
|
|
42
|
+
expect(solr_doc['place_of_publication_llsim']).to include('42.51954,-70.89672')
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
describe '#get_geodata' do
|
|
47
|
+
it 'returns a hash of structured geodata' do
|
|
48
|
+
expect(geodata.class).to eq(Hash)
|
|
49
|
+
expect(geodata['name']).not_to be_falsey
|
|
50
|
+
expect(geodata['lat']).not_to be_falsey
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
RSpec.describe NewspaperWorks::IndexesPublicationDateRange do
|
|
4
|
+
let(:ntitle) { NewspaperTitle.new }
|
|
5
|
+
let(:test_indexer) { NewspaperTitleIndexer.new(ntitle) }
|
|
6
|
+
let(:solr_doc) { {} }
|
|
7
|
+
let(:year) { '1975' }
|
|
8
|
+
let(:year_month) { '1975-05' }
|
|
9
|
+
|
|
10
|
+
describe '#index_pubdate_start' do
|
|
11
|
+
describe 'with year only' do
|
|
12
|
+
before { test_indexer.index_pubdate_start(year, solr_doc) }
|
|
13
|
+
it 'formats YYYY start dates correctly' do
|
|
14
|
+
expect(solr_doc['publication_date_start_dtsi']).to eq("#{year}-01-01T00:00:00Z")
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
describe 'with year and month' do
|
|
18
|
+
before { test_indexer.index_pubdate_start(year_month, solr_doc) }
|
|
19
|
+
it 'formats YYYY-MM start dates correctly' do
|
|
20
|
+
expect(solr_doc['publication_date_start_dtsi']).to eq("#{year_month}-01T00:00:00Z")
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
describe '#index_pubdate_end' do
|
|
26
|
+
describe 'with year only' do
|
|
27
|
+
before { test_indexer.index_pubdate_end(year, solr_doc) }
|
|
28
|
+
it 'formats YYYY end dates correctly' do
|
|
29
|
+
expect(solr_doc['publication_date_end_dtsi']).to eq("#{year}-12-31T23:59:59Z")
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
describe 'with year and month' do
|
|
33
|
+
before { test_indexer.index_pubdate_end(year_month, solr_doc) }
|
|
34
|
+
it 'formats YYYY-MM end dates correctly' do
|
|
35
|
+
expect(solr_doc['publication_date_end_dtsi']).to eq("#{year_month}-31T23:59:59Z")
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|