geoblacklight 2.2.0 → 3.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +212 -112
- data/.rubocop.yml +16 -14
- data/.rubocop_todo.yml +28 -151
- data/Gemfile +3 -8
- data/README.md +1 -1
- data/Rakefile +1 -0
- data/app/assets/images/blacklight/arrow-circle-down.svg +1 -2
- data/app/assets/images/blacklight/baruch-cuny.svg +1 -4
- data/app/assets/images/blacklight/berkeley.svg +1 -4
- data/app/assets/images/blacklight/book.svg +1 -4
- data/app/assets/images/blacklight/bookmark.svg +1 -4
- data/app/assets/images/blacklight/cd-rom.svg +1 -4
- data/app/assets/images/blacklight/chicago.svg +1 -4
- data/app/assets/images/blacklight/citation.svg +3 -0
- data/app/assets/images/blacklight/collection.svg +3 -0
- data/app/assets/images/blacklight/columbia.svg +1 -4
- data/app/assets/images/blacklight/cornell.svg +1 -4
- data/app/assets/images/blacklight/dvd-rom.svg +1 -4
- data/app/assets/images/blacklight/email.svg +1 -4
- data/app/assets/images/blacklight/esri-globe.svg +1 -4
- data/app/assets/images/blacklight/globe.svg +1 -2
- data/app/assets/images/blacklight/harvard.svg +1 -4
- data/app/assets/images/blacklight/home.svg +1 -2
- data/app/assets/images/blacklight/illinois.svg +1 -4
- data/app/assets/images/blacklight/image.svg +1 -4
- data/app/assets/images/blacklight/indiana.svg +1 -4
- data/app/assets/images/blacklight/iowa.svg +1 -4
- data/app/assets/images/blacklight/leaf.svg +1 -4
- data/app/assets/images/blacklight/lewis-clark.svg +1 -4
- data/app/assets/images/blacklight/line.svg +1 -4
- data/app/assets/images/blacklight/map-marker.svg +1 -4
- data/app/assets/images/blacklight/map.svg +1 -4
- data/app/assets/images/blacklight/maryland.svg +1 -4
- data/app/assets/images/blacklight/massgis.svg +1 -4
- data/app/assets/images/blacklight/metadata.svg +1 -4
- data/app/assets/images/blacklight/michigan-state.svg +1 -4
- data/app/assets/images/blacklight/michigan.svg +1 -4
- data/app/assets/images/blacklight/minnesota.svg +1 -4
- data/app/assets/images/blacklight/mit.svg +1 -4
- data/app/assets/images/blacklight/mixed.svg +1 -4
- data/app/assets/images/blacklight/multilinestring.svg +1 -4
- data/app/assets/images/blacklight/multipoint.svg +1 -4
- data/app/assets/images/blacklight/multipolygon.svg +1 -4
- data/app/assets/images/blacklight/nyu.svg +1 -4
- data/app/assets/images/blacklight/ohio-state.svg +1 -4
- data/app/assets/images/blacklight/pagelines-brands.svg +1 -4
- data/app/assets/images/blacklight/paper-map.svg +1 -4
- data/app/assets/images/blacklight/penn-state.svg +1 -4
- data/app/assets/images/blacklight/point.svg +1 -4
- data/app/assets/images/blacklight/polygon.svg +1 -4
- data/app/assets/images/blacklight/polyline.svg +1 -4
- data/app/assets/images/blacklight/princeton.svg +1 -4
- data/app/assets/images/blacklight/public.svg +1 -4
- data/app/assets/images/blacklight/purdue.svg +1 -4
- data/app/assets/images/blacklight/raster.svg +1 -4
- data/app/assets/images/blacklight/restricted.svg +1 -4
- data/app/assets/images/blacklight/sms.svg +1 -4
- data/app/assets/images/blacklight/stanford.svg +1 -4
- data/app/assets/images/blacklight/table.svg +1 -4
- data/app/assets/images/blacklight/tags.svg +1 -2
- data/app/assets/images/blacklight/texas.svg +1 -4
- data/app/assets/images/blacklight/tufts.svg +1 -4
- data/app/assets/images/blacklight/ucla.svg +1 -4
- data/app/assets/images/blacklight/uva.svg +1 -4
- data/app/assets/images/blacklight/web_services.svg +1 -4
- data/app/assets/images/blacklight/wisconsin.svg +1 -4
- data/app/assets/javascripts/geoblacklight/basemaps.js +18 -0
- data/app/assets/javascripts/geoblacklight/downloaders/downloader.js +1 -1
- data/app/assets/javascripts/geoblacklight/modules/geosearch.js +1 -1
- data/app/assets/javascripts/geoblacklight/modules/home.js +1 -1
- data/app/assets/javascripts/geoblacklight/modules/item.js +20 -1
- data/app/assets/javascripts/geoblacklight/modules/results.js +4 -2
- data/app/assets/javascripts/geoblacklight/modules/svg_tooltips.js +31 -0
- data/app/assets/javascripts/geoblacklight/viewers/esri.js +2 -2
- data/app/assets/javascripts/geoblacklight/viewers/esri/tiled_map_layer.js +1 -1
- data/app/assets/javascripts/geoblacklight/viewers/wms.js +2 -2
- data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +2 -0
- data/app/assets/stylesheets/geoblacklight/modules/_base.scss +33 -0
- data/app/assets/stylesheets/geoblacklight/{_blacklight_overrides.scss → modules/_blacklight_overrides.scss} +1 -10
- data/app/assets/stylesheets/geoblacklight/{_styles.scss → modules/_styles.scss} +1 -0
- data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +37 -54
- data/app/assets/stylesheets/geoblacklight/modules/item.scss +13 -0
- data/app/assets/stylesheets/geoblacklight/modules/results.scss +26 -29
- data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +12 -42
- data/app/assets/stylesheets/geoblacklight/modules/toolbar.scss +17 -59
- data/app/controllers/download_controller.rb +12 -12
- data/app/controllers/relation_controller.rb +1 -0
- data/app/controllers/wms_controller.rb +1 -0
- data/app/helpers/arcgis_helper.rb +1 -0
- data/app/helpers/blacklight_helper.rb +1 -0
- data/app/helpers/carto_helper.rb +1 -0
- data/app/helpers/geoblacklight_helper.rb +36 -79
- data/app/models/concerns/geoblacklight/solr_document.rb +15 -9
- data/app/models/concerns/geoblacklight/solr_document/arcgis.rb +2 -1
- data/app/models/concerns/geoblacklight/solr_document/carto.rb +1 -13
- data/app/models/concerns/geoblacklight/solr_document/citation.rb +29 -0
- data/app/models/concerns/geoblacklight/solr_document/finder.rb +1 -0
- data/app/models/concerns/geoblacklight/solr_document/inspection.rb +2 -1
- data/app/models/concerns/geoblacklight/spatial_search_behavior.rb +3 -1
- data/app/presenters/geoblacklight/document_presenter.rb +2 -1
- data/app/views/catalog/_arcgis.html.erb +4 -0
- data/app/views/catalog/_carto.html.erb +4 -0
- data/app/views/catalog/_citation.html.erb +11 -0
- data/app/views/catalog/_data_dictionary.html.erb +1 -1
- data/app/views/catalog/_document_action.html.erb +1 -1
- data/app/views/catalog/_document_split.html.erb +1 -1
- data/app/views/catalog/_downloads_primary.html.erb +8 -1
- data/app/views/catalog/_header_icons.html.erb +3 -3
- data/app/views/catalog/_home_text.html.erb +4 -1
- data/app/views/catalog/_index_split_default.html.erb +22 -14
- data/app/views/catalog/_show_default_viewer_container.html.erb +1 -1
- data/app/views/catalog/_web_services_wfs.html.erb +3 -3
- data/app/views/catalog/_web_services_wms.html.erb +3 -3
- data/app/views/catalog/metadata.html.erb +3 -1
- data/app/views/catalog/web_services.html.erb +9 -7
- data/app/views/relation/_ancestors.html.erb +2 -5
- data/app/views/relation/_descendants.html.erb +3 -6
- data/app/views/relation/index.html.erb +20 -8
- data/app/views/relation/index.json.jbuilder +2 -1
- data/app/views/shared/_header_navbar.html.erb +1 -3
- data/bin/coverage.rb +36 -0
- data/config/initializers/rails_config.rb +1 -0
- data/config/locales/geoblacklight.en.yml +46 -61
- data/geoblacklight.gemspec +5 -8
- data/lib/generators/geoblacklight/assets_generator.rb +46 -0
- data/lib/generators/geoblacklight/install_generator.rb +8 -9
- data/lib/generators/geoblacklight/templates/assets/_blacklight.scss +1 -0
- data/lib/generators/geoblacklight/templates/assets/_customizations.scss +28 -0
- data/{app/assets/stylesheets/geoblacklight/application.scss → lib/generators/geoblacklight/templates/assets/_geoblacklight.scss} +0 -1
- data/lib/generators/geoblacklight/templates/assets/application.scss +7 -0
- data/lib/generators/geoblacklight/templates/{geoblacklight.js → assets/geoblacklight.js} +0 -1
- data/lib/generators/geoblacklight/templates/catalog_controller.rb +6 -2
- data/lib/generators/geoblacklight/templates/settings.yml +4 -6
- data/lib/generators/geoblacklight/webpacker_generator.rb +2 -1
- data/lib/geoblacklight.rb +1 -0
- data/lib/geoblacklight/bounding_box.rb +1 -0
- data/lib/geoblacklight/catalog_helper_override.rb +2 -1
- data/lib/geoblacklight/constants.rb +1 -0
- data/lib/geoblacklight/download.rb +6 -5
- data/lib/geoblacklight/download/geojson_download.rb +1 -0
- data/lib/geoblacklight/download/geotiff_download.rb +1 -0
- data/lib/geoblacklight/download/hgl_download.rb +1 -0
- data/lib/geoblacklight/download/kmz_download.rb +2 -1
- data/lib/geoblacklight/download/shapefile_download.rb +1 -0
- data/lib/geoblacklight/engine.rb +2 -2
- data/lib/geoblacklight/exceptions.rb +1 -0
- data/lib/geoblacklight/geoblacklight_helper_behavior.rb +1 -0
- data/lib/geoblacklight/item_viewer.rb +1 -0
- data/lib/geoblacklight/metadata.rb +1 -0
- data/lib/geoblacklight/metadata/base.rb +3 -2
- data/lib/geoblacklight/metadata/fgdc.rb +1 -0
- data/lib/geoblacklight/metadata/html.rb +2 -2
- data/lib/geoblacklight/metadata/iso19139.rb +1 -0
- data/lib/geoblacklight/metadata_transformer.rb +1 -0
- data/lib/geoblacklight/metadata_transformer/base.rb +1 -0
- data/lib/geoblacklight/metadata_transformer/fgdc.rb +1 -0
- data/lib/geoblacklight/metadata_transformer/iso19139.rb +1 -0
- data/lib/geoblacklight/reference.rb +1 -0
- data/lib/geoblacklight/references.rb +7 -3
- data/lib/geoblacklight/relation/ancestors.rb +2 -1
- data/lib/geoblacklight/relation/descendants.rb +2 -1
- data/lib/geoblacklight/relation/relation_response.rb +2 -1
- data/lib/geoblacklight/routes.rb +1 -0
- data/lib/geoblacklight/routes/downloadable.rb +1 -0
- data/lib/geoblacklight/routes/exportable.rb +1 -0
- data/lib/geoblacklight/routes/wms.rb +1 -0
- data/lib/geoblacklight/version.rb +2 -1
- data/lib/geoblacklight/view_helper_override.rb +2 -1
- data/lib/geoblacklight/wms_layer.rb +3 -2
- data/lib/geoblacklight/wms_layer/feature_info_response.rb +1 -0
- data/lib/tasks/geoblacklight.rake +33 -32
- data/solr/conf/schema.xml +5 -5
- data/spec/controllers/catalog_controller_spec.rb +1 -0
- data/spec/controllers/download_controller_spec.rb +2 -1
- data/spec/controllers/relation_controller_spec.rb +1 -0
- data/spec/controllers/wms_controller_spec.rb +2 -1
- data/spec/factories/user.rb +1 -0
- data/spec/features/bookmarks_spec.rb +1 -0
- data/spec/features/configurable_basemap_spec.rb +10 -0
- data/spec/features/data_dictionary_download_spec.rb +1 -0
- data/spec/features/download_layer_spec.rb +1 -0
- data/spec/features/empty_search_spec.rb +1 -0
- data/spec/features/esri_viewer_spec.rb +1 -6
- data/spec/features/exports_spec.rb +4 -12
- data/spec/features/help_text_spec.rb +1 -0
- data/spec/features/home_page_spec.rb +6 -0
- data/spec/features/iiif_viewer_spec.rb +1 -0
- data/spec/features/index_map_spec.rb +1 -0
- data/spec/features/layer_inspection_spec.rb +1 -0
- data/spec/features/layer_opacity_spec.rb +1 -0
- data/spec/features/layer_preview_spec.rb +1 -0
- data/spec/features/layer_with_no_references_spec.rb +1 -0
- data/spec/features/linkified_attribute_table_spec.rb +1 -0
- data/spec/features/metadata_panel_spec.rb +1 -0
- data/spec/features/missing_metadata_spec.rb +13 -0
- data/spec/features/multiple_downloads_spec.rb +15 -0
- data/spec/features/oembed_spec.rb +1 -0
- data/spec/features/relations_spec.rb +10 -28
- data/spec/features/saved_searches_spec.rb +1 -0
- data/spec/features/search_bar_spec.rb +1 -0
- data/spec/features/search_results_map_spec.rb +1 -6
- data/spec/features/search_results_overlap_ratio_spec.rb +4 -3
- data/spec/features/search_spec.rb +1 -0
- data/spec/features/show_page_metadata_spec.rb +1 -0
- data/spec/features/sms_spec.rb +1 -0
- data/spec/features/split_view.html.erb_spec.rb +4 -3
- data/spec/features/suppressed_records_spec.rb +1 -0
- data/spec/features/web_services_modal_spec.rb +1 -0
- data/spec/fixtures/solr_documents/metadata_no_dct_provenance_s.json +30 -0
- data/spec/fixtures/solr_documents/metadata_no_layer_geom_type_s.json +17 -0
- data/spec/fixtures/solr_documents/metadata_no_solr_geom.json +23 -0
- data/spec/fixtures/solr_documents/multiple-downloads.json +30 -0
- data/spec/helpers/arcgis_helper_spec.rb +1 -0
- data/spec/helpers/carto_helper_spec.rb +1 -0
- data/spec/helpers/geoblacklight_helper_spec.rb +51 -5
- data/spec/javascripts/geoblacklight/viewers/esri/tiled_map_layer_spec.js +12 -0
- data/spec/javascripts/geoblacklight_spec.js +0 -4
- data/spec/lib/geoblacklight/bounding_box_spec.rb +1 -0
- data/spec/lib/geoblacklight/controller_override_spec.rb +1 -0
- data/spec/lib/geoblacklight/document_presenter_spec.rb +3 -2
- data/spec/lib/geoblacklight/download/geojson_download_spec.rb +1 -0
- data/spec/lib/geoblacklight/download/geotiff_download_spec.rb +1 -0
- data/spec/lib/geoblacklight/download/hgl_download_spec.rb +1 -0
- data/spec/lib/geoblacklight/download/kmz_download_spec.rb +1 -0
- data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +1 -0
- data/spec/lib/geoblacklight/download_spec.rb +4 -3
- data/spec/lib/geoblacklight/geoblacklight_helper_behavior_spec.rb +1 -0
- data/spec/lib/geoblacklight/item_viewer_spec.rb +1 -0
- data/spec/lib/geoblacklight/metadata/base_spec.rb +4 -3
- data/spec/lib/geoblacklight/metadata/html_spec.rb +1 -0
- data/spec/lib/geoblacklight/metadata_spec.rb +1 -0
- data/spec/lib/geoblacklight/metadata_transformer/base_spec.rb +3 -2
- data/spec/lib/geoblacklight/metadata_transformer/fgdc_spec.rb +3 -2
- data/spec/lib/geoblacklight/metadata_transformer/iso19139_spec.rb +3 -2
- data/spec/lib/geoblacklight/metadata_transformer_spec.rb +4 -3
- data/spec/lib/geoblacklight/reference_spec.rb +1 -0
- data/spec/lib/geoblacklight/references_spec.rb +2 -3
- data/spec/lib/geoblacklight/relation/ancestors_spec.rb +2 -1
- data/spec/lib/geoblacklight/relation/descendants_spec.rb +2 -1
- data/spec/lib/geoblacklight/relation/relation_response_spec.rb +1 -0
- data/spec/lib/geoblacklight/view_helper_override_spec.rb +1 -0
- data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +5 -4
- data/spec/lib/geoblacklight/wms_layer_spec.rb +3 -2
- data/spec/models/concerns/geoblacklight/solr_document/carto_spec.rb +1 -20
- data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +14 -0
- data/spec/models/concerns/geoblacklight/solr_document/finder_spec.rb +1 -0
- data/spec/models/concerns/geoblacklight/solr_document/inspection_spec.rb +1 -0
- data/spec/models/concerns/geoblacklight/solr_document_spec.rb +27 -0
- data/spec/models/concerns/geoblacklight/spatial_search_behavior_spec.rb +15 -2
- data/spec/routing/catalog_routing_spec.rb +1 -0
- data/spec/spec_helper.rb +12 -9
- data/spec/support/backport_test_helpers.rb +1 -0
- data/spec/support/features.rb +1 -0
- data/spec/support/features/session_helpers.rb +1 -0
- data/spec/support/fixtures.rb +8 -0
- data/spec/tasks/geoblacklight_spec.rb +19 -0
- data/spec/teaspoon_env.rb +1 -0
- data/spec/test_app_templates/Gemfile.extra +1 -0
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +1 -0
- data/spec/views/catalog/_document_split.html.erb_spec.rb +1 -0
- data/spec/views/catalog/_index_split.html.erb_spec.rb +1 -0
- data/spec/views/catalog/_results_pagination.html.erb_spec.rb +1 -0
- data/spec/views/catalog/_show_downloads.html.erb_spec.rb +1 -0
- data/spec/views/catalog/_show_tools.html.erb_spec.rb +2 -4
- data/template.rb +1 -0
- data/vendor/assets/stylesheets/leaflet.css +0 -1
- metadata +69 -79
- data/app/assets/images/blacklight/logo.png +0 -0
- data/app/assets/javascripts/geoblacklight/modules/collapse.js +0 -7
- data/app/assets/stylesheets/geoblacklight/_geoblacklight.scss +0 -36
- data/app/assets/stylesheets/geoblacklight/modules/relations.scss +0 -15
- data/app/views/catalog/_exports.html.erb +0 -3
- data/app/views/catalog/_show_tools.html.erb +0 -25
- data/lib/generators/geoblacklight/templates/geoblacklight.scss +0 -4
- data/vendor/assets/javascripts/readmore.js +0 -618
- data/vendor/assets/javascripts/readmore.js.map +0 -1
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::MetadataTransformer do
|
@@ -9,10 +10,10 @@ describe Geoblacklight::MetadataTransformer do
|
|
9
10
|
|
10
11
|
describe '.instance' do
|
11
12
|
context 'with FGDC metadata' do
|
12
|
-
let(:metadata) { instance_double(Geoblacklight::Metadata::Fgdc) }
|
13
13
|
subject do
|
14
14
|
described_class.instance(metadata)
|
15
15
|
end
|
16
|
+
let(:metadata) { instance_double(Geoblacklight::Metadata::Fgdc) }
|
16
17
|
|
17
18
|
before do
|
18
19
|
allow(klass).to receive(:name).and_return('Geoblacklight::Metadata::Fgdc')
|
@@ -24,10 +25,10 @@ describe Geoblacklight::MetadataTransformer do
|
|
24
25
|
end
|
25
26
|
|
26
27
|
context 'with ISO19139 metadata' do
|
27
|
-
let(:metadata) { instance_double(Geoblacklight::Metadata::Iso19139) }
|
28
28
|
subject do
|
29
29
|
described_class.instance(metadata)
|
30
30
|
end
|
31
|
+
let(:metadata) { instance_double(Geoblacklight::Metadata::Iso19139) }
|
31
32
|
|
32
33
|
before do
|
33
34
|
allow(klass).to receive(:name).and_return('Geoblacklight::Metadata::Iso19139')
|
@@ -39,10 +40,10 @@ describe Geoblacklight::MetadataTransformer do
|
|
39
40
|
end
|
40
41
|
|
41
42
|
context 'without a metadata type' do
|
42
|
-
let(:metadata) { instance_double(Geoblacklight::Metadata::Base) }
|
43
43
|
subject do
|
44
44
|
described_class.instance(metadata)
|
45
45
|
end
|
46
|
+
let(:metadata) { instance_double(Geoblacklight::Metadata::Base) }
|
46
47
|
|
47
48
|
before do
|
48
49
|
allow(klass).to receive(:name).and_return('Geoblacklight::Metadata::Base')
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::References do
|
@@ -133,7 +134,7 @@ describe Geoblacklight::References do
|
|
133
134
|
context 'with an overridden order for the formats' do
|
134
135
|
let(:settings_klass) { class_double('Settings').as_stubbed_const }
|
135
136
|
before do
|
136
|
-
allow(settings_klass).to receive(:METADATA_SHOWN).and_return %w
|
137
|
+
allow(settings_klass).to receive(:METADATA_SHOWN).and_return %w[iso19139 mods]
|
137
138
|
allow(settings_klass).to receive(:FIELDS).and_return OpenStruct.new(FILE_FORMAT: 'dc_format_s')
|
138
139
|
end
|
139
140
|
it 'is ordered by the configuration' do
|
@@ -166,8 +167,6 @@ describe Geoblacklight::References do
|
|
166
167
|
end
|
167
168
|
it 'returns nil if there is no direct download' do
|
168
169
|
expect(typical_ogp_shapefile.preferred_download).to be_nil
|
169
|
-
end
|
170
|
-
it 'returns nil if there is no direct download' do
|
171
170
|
expect(typical_ogp_geotiff.preferred_download).to be_nil
|
172
171
|
end
|
173
172
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::Relation::Ancestors do
|
@@ -7,7 +8,7 @@ describe Geoblacklight::Relation::Ancestors do
|
|
7
8
|
|
8
9
|
describe '#create_search_params' do
|
9
10
|
it 'assembles the correct search params for finding ancestor documents' do
|
10
|
-
expect(ancestors.create_search_params).to eq(fq: ["{!join from=#{Settings.FIELDS.SOURCE} to=layer_slug_s}layer_slug_s:nyu_2451_34502"], fl: [Settings.FIELDS.TITLE.to_s, 'layer_slug_s'])
|
11
|
+
expect(ancestors.create_search_params).to eq(fq: ["{!join from=#{Settings.FIELDS.SOURCE} to=layer_slug_s}layer_slug_s:nyu_2451_34502"], fl: [Settings.FIELDS.TITLE.to_s, 'layer_slug_s', 'layer_geom_type_s'])
|
11
12
|
end
|
12
13
|
end
|
13
14
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::Relation::Descendants do
|
@@ -7,7 +8,7 @@ describe Geoblacklight::Relation::Descendants do
|
|
7
8
|
|
8
9
|
describe '#create_search_params' do
|
9
10
|
it 'assembles the correct search params for finding descendant documents' do
|
10
|
-
expect(descendants.create_search_params).to eq(fq: "#{Settings.FIELDS.SOURCE}:nyu_2451_34636", fl: [Settings.FIELDS.TITLE.to_s, 'layer_slug_s'])
|
11
|
+
expect(descendants.create_search_params).to eq(fq: "#{Settings.FIELDS.SOURCE}:nyu_2451_34636", fl: [Settings.FIELDS.TITLE.to_s, 'layer_slug_s', 'layer_geom_type_s'])
|
11
12
|
end
|
12
13
|
end
|
13
14
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::FeatureInfoResponse do
|
@@ -28,14 +29,14 @@ describe Geoblacklight::FeatureInfoResponse do
|
|
28
29
|
it 'returns a formated response' do
|
29
30
|
expect(response.format).not_to be_nil
|
30
31
|
expect(response.format[:values].length).to eq 2
|
31
|
-
expect(response.format[:values][0]).to eq %w
|
32
|
-
expect(response.format[:values][1]).to eq %w
|
32
|
+
expect(response.format[:values][0]).to eq %w[Header1 value1]
|
33
|
+
expect(response.format[:values][1]).to eq %w[Header2 value2]
|
33
34
|
end
|
34
35
|
it 'returns a formated response when multiple features are retrieved' do
|
35
36
|
expect(response_multiple_features.format).not_to be_nil
|
36
37
|
expect(response_multiple_features.format[:values].length).to eq 2
|
37
|
-
expect(response_multiple_features.format[:values][0]).to eq %w
|
38
|
-
expect(response_multiple_features.format[:values][1]).to eq %w
|
38
|
+
expect(response_multiple_features.format[:values][0]).to eq %w[Header1 value1]
|
39
|
+
expect(response_multiple_features.format[:values][1]).to eq %w[Header2 value2]
|
39
40
|
end
|
40
41
|
end
|
41
42
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::WmsLayer do
|
@@ -73,7 +74,7 @@ describe Geoblacklight::WmsLayer do
|
|
73
74
|
context 'when the HTTP connection fails' do
|
74
75
|
before do
|
75
76
|
allow(Geoblacklight.logger).to receive(:error).with('#<Faraday::ConnectionFailed wrapped=#<StandardError: test connection error>>')
|
76
|
-
allow(connection).to receive(:get).and_raise(Faraday::
|
77
|
+
allow(connection).to receive(:get).and_raise(Faraday::ConnectionFailed.new(StandardError.new('test connection error')))
|
77
78
|
end
|
78
79
|
|
79
80
|
it 'logs the Faraday error' do
|
@@ -86,7 +87,7 @@ describe Geoblacklight::WmsLayer do
|
|
86
87
|
context 'when the HTTP connection times out' do
|
87
88
|
before do
|
88
89
|
allow(Geoblacklight.logger).to receive(:error).with('#<Faraday::TimeoutError #<Faraday::TimeoutError: timeout>>')
|
89
|
-
allow(connection).to receive(:get).and_raise(Faraday::
|
90
|
+
allow(connection).to receive(:get).and_raise(Faraday::TimeoutError)
|
90
91
|
end
|
91
92
|
|
92
93
|
it 'logs the Faraday error' do
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::SolrDocument::Carto do
|
@@ -38,24 +39,4 @@ describe Geoblacklight::SolrDocument::Carto do
|
|
38
39
|
expect(document.carto_reference).to eq 'http://www.example.com/geojsonDownload'
|
39
40
|
end
|
40
41
|
end
|
41
|
-
|
42
|
-
describe '#cartodb_reference' do
|
43
|
-
before do
|
44
|
-
allow(Deprecation).to receive(:warn).with(
|
45
|
-
described_class,
|
46
|
-
'cartodb_reference is deprecated and will be removed from Geoblacklight 2.0.0 (use Geoblacklight::SolrDocument::Carto#carto_reference instead)',
|
47
|
-
kind_of(Array)
|
48
|
-
)
|
49
|
-
allow(document).to receive(:public?).and_return(true)
|
50
|
-
allow(document).to receive(:download_types).and_return(geojson: { 'stuff' => 'stuff' })
|
51
|
-
allow(geojson_download)
|
52
|
-
.to receive(:url_with_params)
|
53
|
-
.and_return('http://www.example.com/geojsonDownload')
|
54
|
-
end
|
55
|
-
|
56
|
-
it 'aliases to #carto_reference' do
|
57
|
-
expect(Deprecation).to receive(:warn)
|
58
|
-
expect(document.cartodb_reference).to eq(document.carto_reference)
|
59
|
-
end
|
60
|
-
end
|
61
42
|
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Geoblacklight::SolrDocument::Citation do
|
5
|
+
describe '#geoblacklight_citation' do
|
6
|
+
let(:fixture) { JSON.parse(read_fixture('solr_documents/restricted-line.json')) }
|
7
|
+
let(:document) { SolrDocument.new(fixture) }
|
8
|
+
|
9
|
+
it 'creates a citation' do
|
10
|
+
expect(document.geoblacklight_citation('http://example.com'))
|
11
|
+
.to eq 'United States. National Oceanic and Atmospheric Administration. Circuit Rider Productions. (2002). 10 Meter Contours: Russian River Basin, California. [Shapefile]. Circuit Rider Productions. Retrieved from http://example.com'
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::SolrDocument do
|
@@ -35,6 +36,32 @@ describe Geoblacklight::SolrDocument do
|
|
35
36
|
expect(document.public?).to be_falsey
|
36
37
|
end
|
37
38
|
end
|
39
|
+
describe 'without rights data' do
|
40
|
+
let(:document_attributes) { {} }
|
41
|
+
it 'is not public' do
|
42
|
+
expect(document.public?).to be_falsey
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
describe '#restricted?' do
|
47
|
+
describe 'a restricted document' do
|
48
|
+
let(:document_attributes) { { rights_field => 'RESTRICTED' } }
|
49
|
+
it 'is restricted' do
|
50
|
+
expect(document.restricted?).to be_truthy
|
51
|
+
end
|
52
|
+
end
|
53
|
+
describe 'a non-restricted resource' do
|
54
|
+
let(:document_attributes) { { rights_field => 'PUBLIC' } }
|
55
|
+
it 'is not restricted' do
|
56
|
+
expect(document.restricted?).to be_falsey
|
57
|
+
end
|
58
|
+
end
|
59
|
+
describe 'without rights data' do
|
60
|
+
let(:document_attributes) { {} }
|
61
|
+
it 'is restricted' do
|
62
|
+
expect(document.restricted?).to be_truthy
|
63
|
+
end
|
64
|
+
end
|
38
65
|
end
|
39
66
|
describe '#downloadable?' do
|
40
67
|
describe 'available direct download' do
|
@@ -1,10 +1,11 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::SpatialSearchBehavior do
|
4
5
|
subject { search_builder.with(user_params) }
|
5
6
|
|
6
|
-
let(:user_params) {
|
7
|
-
let(:solr_params) {
|
7
|
+
let(:user_params) { {} }
|
8
|
+
let(:solr_params) { {} }
|
8
9
|
let(:blacklight_config) { CatalogController.blacklight_config.deep_copy }
|
9
10
|
let(:context) { CatalogController.new }
|
10
11
|
let(:search_builder_class) do
|
@@ -53,6 +54,18 @@ describe Geoblacklight::SpatialSearchBehavior do
|
|
53
54
|
expect(subject.add_spatial_params(solr_params)).not_to have_key(:overlap)
|
54
55
|
end
|
55
56
|
|
57
|
+
context 'when local boost parameter is present' do
|
58
|
+
before do
|
59
|
+
solr_params[:bf] = ['local_boost^5']
|
60
|
+
end
|
61
|
+
|
62
|
+
it 'appends overlap and includes the local boost' do
|
63
|
+
allow(Settings).to receive(:OVERLAP_RATIO_BOOST).and_return 2
|
64
|
+
expect(subject.add_spatial_params(solr_params)[:bf].to_s).to include('$overlap^2')
|
65
|
+
expect(solr_params[:bf].to_s).to include('local_boost^5')
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
56
69
|
context 'when the wrong format for the bounding box is used' do
|
57
70
|
before do
|
58
71
|
allow(subject).to receive(:bounding_box).and_raise(Geoblacklight::Exceptions::WrongBoundingBoxFormat)
|
data/spec/spec_helper.rb
CHANGED
@@ -1,17 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
ENV['RAILS_ENV'] ||= 'test'
|
2
3
|
|
3
4
|
require 'simplecov'
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
5
|
+
SimpleCov.formatter = SimpleCov::Formatter::HTMLFormatter
|
6
|
+
|
7
|
+
if ENV['CIRCLE_ARTIFACTS']
|
8
|
+
dir = File.join(ENV['CIRCLE_ARTIFACTS'], 'coverage')
|
9
|
+
SimpleCov.coverage_dir(dir)
|
10
|
+
end
|
11
|
+
|
11
12
|
SimpleCov.start 'rails' do
|
12
13
|
add_filter 'lib/generators/geoblacklight/install_generator.rb'
|
13
14
|
add_filter 'lib/geoblacklight/version.rb'
|
14
|
-
add_filter 'lib/generators
|
15
|
+
add_filter 'lib/generators'
|
16
|
+
add_filter 'lib/tasks/geoblacklight.rake'
|
15
17
|
add_filter '/spec'
|
16
18
|
add_filter '.internal_test_app/'
|
17
19
|
end
|
@@ -26,6 +28,7 @@ require 'rails-controller-testing' if Rails::VERSION::MAJOR >= 5
|
|
26
28
|
require 'rspec/rails'
|
27
29
|
require 'capybara/rspec'
|
28
30
|
require 'selenium-webdriver'
|
31
|
+
require 'webdrivers'
|
29
32
|
|
30
33
|
Capybara.register_driver(:headless_chrome) do |app|
|
31
34
|
Capybara::Selenium::Driver.load_selenium
|
@@ -56,7 +59,7 @@ FactoryBot.find_definitions
|
|
56
59
|
RSpec.configure do |config|
|
57
60
|
config.use_transactional_fixtures = false
|
58
61
|
|
59
|
-
config.before
|
62
|
+
config.before do
|
60
63
|
DatabaseCleaner.strategy = if Capybara.current_driver == :rack_test
|
61
64
|
:transaction
|
62
65
|
else
|
data/spec/support/features.rb
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require 'spec_helper'
|
3
|
+
require 'rake'
|
4
|
+
require 'fileutils'
|
5
|
+
|
6
|
+
describe 'geoblacklight.rake' do
|
7
|
+
describe 'geoblacklight:downloads:mkdir' do
|
8
|
+
before do
|
9
|
+
Rails.application.load_tasks
|
10
|
+
FileUtils.rm_rf Rails.root.join('tmp', 'cache', 'downloads')
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'creates the tmp/cache/downloads directory' do
|
14
|
+
Rake::Task['geoblacklight:downloads:mkdir'].invoke
|
15
|
+
expect(File.directory?(Rails.root.join('tmp', 'cache', 'downloads')))
|
16
|
+
.to be true
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/spec/teaspoon_env.rb
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
gem 'sprockets', '< 4'
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe 'catalog/_show_tools.html.erb', type: :view do
|
@@ -6,11 +7,8 @@ describe 'catalog/_show_tools.html.erb', type: :view do
|
|
6
7
|
let(:context) { Blacklight::Configuration::Context.new(controller) }
|
7
8
|
|
8
9
|
before do
|
9
|
-
assign :response, instance_double(Blacklight::Solr::Response, params: {})
|
10
10
|
assign :document, document
|
11
11
|
allow(view).to receive(:blacklight_config).and_return blacklight_config
|
12
|
-
allow(view).to receive(:has_user_authentication_provider?).and_return false
|
13
|
-
|
14
12
|
allow(view).to receive(:blacklight_configuration_context).and_return context
|
15
13
|
end
|
16
14
|
|
@@ -18,7 +16,7 @@ describe 'catalog/_show_tools.html.erb', type: :view do
|
|
18
16
|
let(:document_actions) { blacklight_config.show.document_actions }
|
19
17
|
|
20
18
|
it 'renders a document action' do
|
21
|
-
allow(view).to receive(:some_action_solr_document_path).with(document).and_return 'x'
|
19
|
+
allow(view).to receive(:some_action_solr_document_path).with(document, any_args).and_return 'x'
|
22
20
|
document_actions[:some_action] = Blacklight::Configuration::ToolConfig.new partial: 'document_action'
|
23
21
|
render partial: 'catalog/show_tools'
|
24
22
|
expect(rendered).to have_link 'Some action', href: 'x'
|