geoblacklight 2.4.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.circleci/config.yml +152 -64
- data/.rubocop.yml +15 -13
- data/.rubocop_todo.yml +66 -10
- data/README.md +1 -1
- data/Rakefile +1 -0
- data/app/assets/javascripts/geoblacklight/downloaders/downloader.js +1 -1
- 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} +0 -0
- 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 +1 -0
- data/app/assets/stylesheets/geoblacklight/modules/results.scss +16 -28
- 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 +25 -72
- data/app/models/concerns/geoblacklight/solr_document.rb +7 -6
- 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 +1 -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/_downloads_primary.html.erb +8 -1
- data/app/views/catalog/_header_icons.html.erb +3 -3
- data/app/views/catalog/_home_text.html.erb +3 -0
- data/app/views/catalog/_index_split_default.html.erb +21 -21
- data/app/views/relation/_ancestors.html.erb +1 -4
- data/app/views/relation/_descendants.html.erb +2 -5
- 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 +0 -2
- data/bin/coverage.rb +36 -0
- data/config/initializers/rails_config.rb +1 -0
- data/config/locales/geoblacklight.en.yml +3 -2
- data/geoblacklight.gemspec +3 -6
- data/lib/generators/geoblacklight/assets_generator.rb +46 -0
- data/lib/generators/geoblacklight/install_generator.rb +3 -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 -0
- data/lib/generators/geoblacklight/templates/catalog_controller.rb +3 -2
- data/lib/generators/geoblacklight/templates/settings.yml +0 -6
- data/lib/generators/geoblacklight/webpacker_generator.rb +1 -0
- data/lib/geoblacklight.rb +1 -0
- data/lib/geoblacklight/bounding_box.rb +1 -0
- data/lib/geoblacklight/catalog_helper_override.rb +1 -0
- data/lib/geoblacklight/constants.rb +1 -0
- data/lib/geoblacklight/download.rb +2 -1
- 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 +1 -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 +1 -0
- 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 +1 -0
- data/lib/geoblacklight/relation/descendants.rb +1 -0
- 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 +1 -0
- data/lib/geoblacklight/wms_layer.rb +1 -0
- data/lib/geoblacklight/wms_layer/feature_info_response.rb +1 -0
- data/lib/tasks/geoblacklight.rake +33 -32
- data/spec/controllers/catalog_controller_spec.rb +1 -0
- data/spec/controllers/download_controller_spec.rb +1 -0
- data/spec/controllers/relation_controller_spec.rb +1 -0
- data/spec/controllers/wms_controller_spec.rb +1 -0
- data/spec/factories/user.rb +1 -0
- data/spec/features/bookmarks_spec.rb +1 -0
- data/spec/features/configurable_basemap_spec.rb +1 -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 -5
- 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 +1 -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 -29
- 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 +2 -1
- data/spec/features/suppressed_records_spec.rb +1 -0
- data/spec/features/web_services_modal_spec.rb +1 -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 +47 -14
- data/spec/javascripts/geoblacklight/viewers/esri/tiled_map_layer_spec.js +12 -0
- 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 +2 -1
- 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 +1 -0
- 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 +1 -0
- data/spec/lib/geoblacklight/relation/descendants_spec.rb +1 -0
- 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 +1 -0
- data/spec/models/concerns/geoblacklight/solr_document/carto_spec.rb +1 -20
- data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +1 -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 +1 -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 +1 -0
- data/spec/tasks/geoblacklight_spec.rb +4 -3
- data/spec/teaspoon_env.rb +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
- metadata +42 -68
- 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 -0
- data/vendor/assets/javascripts/readmore.min.js +0 -0
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
feature 'Multiple downloads' do
|
5
|
+
feature 'when item has multiple downloads in dct_references_s' do
|
6
|
+
scenario 'downloads are listed in download card' do
|
7
|
+
visit solr_document_path 'cugir-007950'
|
8
|
+
within '.card.downloads' do
|
9
|
+
expect(page).to have_link 'Shapefile', href: 'https://cugir-data.s3.amazonaws.com/00/79/50/cugir-007950.zip'
|
10
|
+
expect(page).to have_link 'PDF', href: 'https://cugir-data.s3.amazonaws.com/00/79/50/agBROO.pdf'
|
11
|
+
expect(page).to have_link 'KMZ', href: 'https://cugir-data.s3.amazonaws.com/00/79/50/agBROO2011.kmz'
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -1,52 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
feature 'Display related documents' do
|
4
|
-
let(:expected_json_resp) do
|
5
|
-
{
|
6
|
-
'ancestors' =>
|
7
|
-
{
|
8
|
-
'numFound' => 0,
|
9
|
-
'start' => 0,
|
10
|
-
'docs' => []
|
11
|
-
},
|
12
|
-
'descendants' =>
|
13
|
-
{
|
14
|
-
'numFound' => 1,
|
15
|
-
'start' => 0,
|
16
|
-
'docs' =>
|
17
|
-
[
|
18
|
-
{
|
19
|
-
'dc_title_s' => '2015 New York City Subway Complexes and Ridership',
|
20
|
-
'layer_slug_s' => 'nyu_2451_34502',
|
21
|
-
'layer_geom_type_s' => 'Point'
|
22
|
-
}
|
23
|
-
]
|
24
|
-
},
|
25
|
-
'current_doc' => 'nyu_2451_34635'
|
26
|
-
}
|
27
|
-
end
|
28
5
|
scenario 'Record with dc_source_sm value(s) should have parent(s)' do
|
29
6
|
visit relations_solr_document_path('nyu_2451_34502')
|
30
|
-
expect(page).to have_css('
|
7
|
+
expect(page).to have_css('.relations .card-header h2', text: 'Source Datasets')
|
31
8
|
end
|
32
9
|
|
33
10
|
scenario 'Record that is pointed to by others should have children' do
|
34
11
|
visit relations_solr_document_path('nyu_2451_34635')
|
35
|
-
expect(page).to have_css('
|
12
|
+
expect(page).to have_css('.relations .card-header h2', text: 'Derived Datasets')
|
36
13
|
end
|
37
14
|
|
38
15
|
scenario 'Relations should respond to json' do
|
39
16
|
visit relations_solr_document_path('nyu_2451_34635', format: 'json')
|
40
|
-
|
17
|
+
response = JSON.parse(page.body)
|
18
|
+
expect(response['ancestors']['numFound']).to eq 0
|
19
|
+
expect(response['descendants']['docs'].first['layer_slug_s']).to eq 'nyu_2451_34502'
|
20
|
+
expect(response['current_doc']).to eq 'nyu_2451_34635'
|
41
21
|
end
|
42
22
|
|
43
23
|
scenario 'Record with relations should render widget in catalog#show', js: true do
|
44
24
|
visit solr_document_path('nyu_2451_34635')
|
45
|
-
expect(page).to have_css('
|
25
|
+
expect(page).to have_css('.card.relations')
|
26
|
+
expect(page).to have_css('div.card-header', text: 'Derived Datasets')
|
46
27
|
end
|
47
28
|
|
48
29
|
scenario 'Record without relations should not render widget in catalog#show', js: true do
|
49
30
|
visit solr_document_path('harvard-g7064-s2-1834-k3')
|
50
|
-
expect(page).to have_no_css('
|
31
|
+
expect(page).to have_no_css('.card.relations')
|
51
32
|
end
|
52
33
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
feature 'search results map', js: true do
|
@@ -5,12 +6,6 @@ feature 'search results map', js: true do
|
|
5
6
|
visit search_catalog_path(q: 'Minnesota')
|
6
7
|
expect(page).to have_css '#map'
|
7
8
|
end
|
8
|
-
scenario 'present on a search result page' do
|
9
|
-
visit root_path
|
10
|
-
click_link 'Minnesota, United States'
|
11
|
-
results = page.all(:css, 'article.document')
|
12
|
-
expect(results.count).to equal(3)
|
13
|
-
end
|
14
9
|
scenario 'view is scoped to Minnesota' do
|
15
10
|
visit root_path
|
16
11
|
click_link 'Minnesota, United States'
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
feature 'spatial search results overlap ratio' do
|
@@ -34,15 +35,15 @@ feature 'spatial search results overlap ratio' do
|
|
34
35
|
|
35
36
|
# NY State result
|
36
37
|
# Bigger bbox / result bbox overlaps bbox param best
|
37
|
-
expect(position_in_result_page(page, 'cugir-008186')).to be <
|
38
|
+
expect(position_in_result_page(page, 'cugir-008186')).to be < 4
|
38
39
|
|
39
40
|
# NY State result
|
40
41
|
# Bigger bbox / result bbox overlaps bbox param best (score tie)
|
41
|
-
expect(position_in_result_page(page, 'cugir-008186-no-downloadurl')).to be <
|
42
|
+
expect(position_in_result_page(page, 'cugir-008186-no-downloadurl')).to be < 4
|
42
43
|
|
43
44
|
# NY Adirondak Region result
|
44
45
|
# Smaller bbox / result bbox overlaps bbox param the least
|
45
|
-
expect(position_in_result_page(page, 'cugir-007741')).to eq
|
46
|
+
expect(position_in_result_page(page, 'cugir-007741')).to eq 4
|
46
47
|
end
|
47
48
|
end
|
48
49
|
|
data/spec/features/sms_spec.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
feature 'Index view', js: true do
|
@@ -51,7 +52,7 @@ feature 'Index view', js: true do
|
|
51
52
|
end
|
52
53
|
|
53
54
|
scenario 'click on a record area to expand collapse' do
|
54
|
-
within('
|
55
|
+
within('article', match: :first) do
|
55
56
|
expect(page).not_to have_css('.collapse')
|
56
57
|
find('button').click
|
57
58
|
expect(page).to have_css('.collapse', visible: true)
|
@@ -0,0 +1,30 @@
|
|
1
|
+
{
|
2
|
+
"geoblacklight_version": "1.0",
|
3
|
+
"dc_identifier_s": "https://cugir.library.cornell.edu/catalog/cugir-007950",
|
4
|
+
"dc_title_s": "Test record with additional download formats",
|
5
|
+
"dc_description_s": "This is a test record containing new-style references as nested child documents. In addition to the origianl shapefile download, the references section contains additional PDF and KMZ downloads.",
|
6
|
+
"dc_rights_s": "Public",
|
7
|
+
"dct_provenance_s": "Cornell",
|
8
|
+
"dct_references_s": "{\"http:\/\/schema.org\/downloadUrl\":[{\"url\":\"https:\/\/cugir-data.s3.amazonaws.com\/00\/79\/50\/cugir-007950.zip\",\"label\":\"Shapefile\"},{\"url\":\"https:\/\/cugir-data.s3.amazonaws.com\/00\/79\/50\/agBROO.pdf\",\"label\":\"PDF\"},{\"url\":\"https:\/\/cugir-data.s3.amazonaws.com\/00\/79\/50\/agBROO2011.kmz\",\"label\":\"KMZ\"}],\"http:\/\/www.opengis.net\/cat\/csw\/csdgm\":\"https:\/\/cugir-data.s3.amazonaws.com\/00\/79\/50\/fgdc.xml\",\"http:\/\/www.w3.org\/1999\/xhtml\":\"https:\/\/cugir-data.s3.amazonaws.com\/00\/79\/50\/fgdc.html\",\"http:\/\/www.opengis.net\/def\/serviceType\/ogc\/wfs\":\"https:\/\/cugir.library.cornell.edu\/geoserver\/cugir\/wfs\",\"http:\/\/www.opengis.net\/def\/serviceType\/ogc\/wms\":\"https:\/\/cugir.library.cornell.edu\/geoserver\/cugir\/wms\"}",
|
9
|
+
"layer_id_s": "cugir007950",
|
10
|
+
"layer_slug_s": "cugir-007950",
|
11
|
+
"dc_type_s": "Dataset",
|
12
|
+
"dc_format_s": "Shapefile",
|
13
|
+
"layer_geom_type_s": "Polygon",
|
14
|
+
"layer_modified_dt": "2019-05-24T00:00:00Z",
|
15
|
+
"dc_creator_sm": [
|
16
|
+
"Cornell Institute for Resource Information Sciences (Cornell IRIS)",
|
17
|
+
"NYS Department of Agriculture and Markets"
|
18
|
+
],
|
19
|
+
"dc_subject_sm": [
|
20
|
+
"New York State Agricultural District boundaries",
|
21
|
+
"Agriculture and Markets",
|
22
|
+
"Agricultural Districts Mapping Program"
|
23
|
+
],
|
24
|
+
"dct_spatial_sm": ["Broome County NY"],
|
25
|
+
"dct_issued_s": "2011-02-28",
|
26
|
+
"dct_temporal_sm": ["2011"],
|
27
|
+
"dct_isPartOf_sm": ["Agricultural Districts (NYS Ag and Markets)"],
|
28
|
+
"solr_geom": "ENVELOPE(-76.12987, -75.42034, 42.414648, 41.997963)",
|
29
|
+
"solr_year_i": 2011
|
30
|
+
}
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe GeoblacklightHelper, type: :helper do
|
@@ -8,7 +9,7 @@ describe GeoblacklightHelper, type: :helper do
|
|
8
9
|
let(:subject_field) { Settings.FIELDS.SUBJECT }
|
9
10
|
it 'contains unique links' do
|
10
11
|
expect(self).to receive(:search_catalog_path).exactly(3).times.and_return("http://example.com/catalog?f[#{subject_field}][]=category")
|
11
|
-
html = Capybara.string(render_facet_links(subject_field, %w
|
12
|
+
html = Capybara.string(render_facet_links(subject_field, %w[Test Test Earth Science]))
|
12
13
|
expect(html).to have_css 'a', count: 3
|
13
14
|
expect(html).to have_css 'a', text: 'Test', count: 1
|
14
15
|
expect(html).to have_css 'a', text: 'Earth', count: 1
|
@@ -52,6 +53,17 @@ describe GeoblacklightHelper, type: :helper do
|
|
52
53
|
end
|
53
54
|
end
|
54
55
|
|
56
|
+
describe '#download_link_file' do
|
57
|
+
let(:label) { 'Test Link Text' }
|
58
|
+
let(:id) { 'test-id' }
|
59
|
+
let(:url) { 'http://example.com/urn:hul.harvard.edu:HARVARD.SDE2.TG10USAIANNH/data.zip' }
|
60
|
+
|
61
|
+
it 'generates a link to download the original file' do
|
62
|
+
puts download_link_file(label, id, url)
|
63
|
+
expect(download_link_file(label, id, url)).to eq '<a contentUrl="http://example.com/urn:hul.harvard.edu:HARVARD.SDE2.TG10USAIANNH/data.zip" class="btn btn-default download download-original" data-download="trigger" data-download-type="direct" data-download-id="test-id" href="http://example.com/urn:hul.harvard.edu:HARVARD.SDE2.TG10USAIANNH/data.zip">Test Link Text</a>'
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
55
67
|
describe '#download_link_direct' do
|
56
68
|
let(:text) { 'Test Link Text' }
|
57
69
|
let(:references_field) { Settings.FIELDS.REFERENCES }
|
@@ -185,7 +197,7 @@ describe GeoblacklightHelper, type: :helper do
|
|
185
197
|
context 'as a multivalued Array' do
|
186
198
|
let(:document_attributes) do
|
187
199
|
{
|
188
|
-
value: %w
|
200
|
+
value: %w[short description]
|
189
201
|
}
|
190
202
|
end
|
191
203
|
it 'uses both values' do
|
@@ -204,9 +216,9 @@ describe GeoblacklightHelper, type: :helper do
|
|
204
216
|
allow(helper).to receive(:application_name).and_return('GeoBlacklight')
|
205
217
|
end
|
206
218
|
|
207
|
-
describe '#
|
219
|
+
describe '#carto_link' do
|
208
220
|
it 'aliases CartoHelper#carto_link' do
|
209
|
-
expect(helper.
|
221
|
+
expect(helper.carto_link('http://demo.org/wfs/layer.json')).to eq(helper.carto_link('http://demo.org/wfs/layer.json'))
|
210
222
|
end
|
211
223
|
end
|
212
224
|
end
|
@@ -240,7 +252,7 @@ describe GeoblacklightHelper, type: :helper do
|
|
240
252
|
|
241
253
|
describe '#render_value_as_truncate_abstract' do
|
242
254
|
context 'with multiple values' do
|
243
|
-
let(:document) { SolrDocument.new(value: %w
|
255
|
+
let(:document) { SolrDocument.new(value: %w[short description]) }
|
244
256
|
it 'wraps in correct DIV class' do
|
245
257
|
expect(helper.render_value_as_truncate_abstract(document)).to eq '<div class="truncate-abstract">short description</div>'
|
246
258
|
end
|
@@ -328,15 +340,36 @@ describe GeoblacklightHelper, type: :helper do
|
|
328
340
|
end
|
329
341
|
|
330
342
|
describe '#relations_icon' do
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
343
|
+
context 'when configured to use the geometry type' do
|
344
|
+
before do
|
345
|
+
allow(Settings).to receive(:USE_GEOM_FOR_RELATIONS_ICON).and_return(true)
|
346
|
+
end
|
347
|
+
|
348
|
+
it 'renders a goemetry type as the icon' do
|
349
|
+
html = Capybara.string(helper.relations_icon({ 'layer_geom_type_s' => 'polygon' }, 'leaf'))
|
350
|
+
expect(html.title.strip).to eq 'Polygon'
|
351
|
+
end
|
352
|
+
|
353
|
+
it 'has the svg_tooltip class so that the Bootstrap tooltip is applied' do
|
354
|
+
html = Capybara.string(helper.relations_icon({ 'layer_geom_type_s' => 'polygon' }, 'leaf'))
|
355
|
+
expect(html).to have_css('.blacklight-icons.svg_tooltip')
|
356
|
+
end
|
357
|
+
end
|
358
|
+
|
359
|
+
context 'when not confiugred to use the geometry type' do
|
360
|
+
before do
|
361
|
+
allow(Settings).to receive(:USE_GEOM_FOR_RELATIONS_ICON).and_return(false)
|
362
|
+
end
|
363
|
+
|
364
|
+
it 'renders the provided icon' do
|
365
|
+
html = Capybara.string(helper.relations_icon({ 'layer_geom_type_s' => 'polygon' }, 'leaf'))
|
366
|
+
expect(html.title.strip).to eq 'Leaf'
|
367
|
+
end
|
368
|
+
|
369
|
+
it 'does not have the svg_tooltip class' do
|
370
|
+
html = Capybara.string(helper.relations_icon({ 'layer_geom_type_s' => 'polygon' }, 'leaf'))
|
371
|
+
expect(html).not_to have_css('.blacklight-icons.svg_tooltip')
|
372
|
+
end
|
340
373
|
end
|
341
374
|
end
|
342
375
|
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
//= require geoblacklight
|
2
|
+
|
3
|
+
describe('setupInspection', function() {
|
4
|
+
describe('Inspect attribute on the map', function() {
|
5
|
+
it('identifyFeatures is defined', function() {
|
6
|
+
expect(L.esri.identifyFeatures).toBeDefined();
|
7
|
+
});
|
8
|
+
it('Tasks is not defined', function() {
|
9
|
+
expect(L.esri.Tasks).toBeUndefined();
|
10
|
+
});
|
11
|
+
});
|
12
|
+
});
|
@@ -1,7 +1,9 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::DocumentPresenter do
|
4
5
|
# Please see https://github.com/projectblacklight/blacklight/blob/v6.15.0/spec/presenters/index_presenter_spec.rb#L4
|
6
|
+
subject { presenter }
|
5
7
|
let(:request_context) { double(document_index_view_type: 'list') }
|
6
8
|
let(:blacklight_config) do
|
7
9
|
Blacklight::Configuration.new.configure do |config|
|
@@ -12,7 +14,6 @@ describe Geoblacklight::DocumentPresenter do
|
|
12
14
|
end
|
13
15
|
end
|
14
16
|
let(:solr_fields) { Settings.FIELDS }
|
15
|
-
subject { presenter }
|
16
17
|
let(:presenter) do
|
17
18
|
described_class.new(document, request_context, blacklight_config)
|
18
19
|
end
|
@@ -23,7 +24,7 @@ describe Geoblacklight::DocumentPresenter do
|
|
23
24
|
layer_id_s: 'druid:abc123',
|
24
25
|
non_index_field: 'do not render',
|
25
26
|
period: 'Ends with period.',
|
26
|
-
multi_display: %w
|
27
|
+
multi_display: %w[blue blah]
|
27
28
|
)
|
28
29
|
end
|
29
30
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Geoblacklight::Download do
|
@@ -31,7 +32,7 @@ describe Geoblacklight::Download do
|
|
31
32
|
end
|
32
33
|
describe '#file_path' do
|
33
34
|
it 'returns the path with name and extension' do
|
34
|
-
expect(download.class.file_path).to eq
|
35
|
+
expect(download.class.file_path).to eq Rails.root.join('tmp', 'cache', 'downloads')
|
35
36
|
end
|
36
37
|
it 'is configurable' do
|
37
38
|
expect(Settings).to receive(:DOWNLOAD_PATH).and_return('configured/path')
|