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.
Files changed (193) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +152 -64
  3. data/.rubocop.yml +15 -13
  4. data/.rubocop_todo.yml +66 -10
  5. data/README.md +1 -1
  6. data/Rakefile +1 -0
  7. data/app/assets/javascripts/geoblacklight/downloaders/downloader.js +1 -1
  8. data/app/assets/javascripts/geoblacklight/modules/svg_tooltips.js +31 -0
  9. data/app/assets/javascripts/geoblacklight/viewers/esri.js +2 -2
  10. data/app/assets/javascripts/geoblacklight/viewers/esri/tiled_map_layer.js +1 -1
  11. data/app/assets/javascripts/geoblacklight/viewers/wms.js +2 -2
  12. data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +2 -0
  13. data/app/assets/stylesheets/geoblacklight/modules/_base.scss +33 -0
  14. data/app/assets/stylesheets/geoblacklight/{_blacklight_overrides.scss → modules/_blacklight_overrides.scss} +0 -0
  15. data/app/assets/stylesheets/geoblacklight/{_styles.scss → modules/_styles.scss} +1 -0
  16. data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +37 -54
  17. data/app/assets/stylesheets/geoblacklight/modules/item.scss +1 -0
  18. data/app/assets/stylesheets/geoblacklight/modules/results.scss +16 -28
  19. data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +12 -42
  20. data/app/assets/stylesheets/geoblacklight/modules/toolbar.scss +17 -59
  21. data/app/controllers/download_controller.rb +12 -12
  22. data/app/controllers/relation_controller.rb +1 -0
  23. data/app/controllers/wms_controller.rb +1 -0
  24. data/app/helpers/arcgis_helper.rb +1 -0
  25. data/app/helpers/blacklight_helper.rb +1 -0
  26. data/app/helpers/carto_helper.rb +1 -0
  27. data/app/helpers/geoblacklight_helper.rb +25 -72
  28. data/app/models/concerns/geoblacklight/solr_document.rb +7 -6
  29. data/app/models/concerns/geoblacklight/solr_document/arcgis.rb +2 -1
  30. data/app/models/concerns/geoblacklight/solr_document/carto.rb +1 -13
  31. data/app/models/concerns/geoblacklight/solr_document/citation.rb +1 -0
  32. data/app/models/concerns/geoblacklight/solr_document/finder.rb +1 -0
  33. data/app/models/concerns/geoblacklight/solr_document/inspection.rb +2 -1
  34. data/app/models/concerns/geoblacklight/spatial_search_behavior.rb +3 -1
  35. data/app/presenters/geoblacklight/document_presenter.rb +2 -1
  36. data/app/views/catalog/_arcgis.html.erb +4 -0
  37. data/app/views/catalog/_carto.html.erb +4 -0
  38. data/app/views/catalog/_downloads_primary.html.erb +8 -1
  39. data/app/views/catalog/_header_icons.html.erb +3 -3
  40. data/app/views/catalog/_home_text.html.erb +3 -0
  41. data/app/views/catalog/_index_split_default.html.erb +21 -21
  42. data/app/views/relation/_ancestors.html.erb +1 -4
  43. data/app/views/relation/_descendants.html.erb +2 -5
  44. data/app/views/relation/index.html.erb +20 -8
  45. data/app/views/relation/index.json.jbuilder +2 -1
  46. data/app/views/shared/_header_navbar.html.erb +0 -2
  47. data/bin/coverage.rb +36 -0
  48. data/config/initializers/rails_config.rb +1 -0
  49. data/config/locales/geoblacklight.en.yml +3 -2
  50. data/geoblacklight.gemspec +3 -6
  51. data/lib/generators/geoblacklight/assets_generator.rb +46 -0
  52. data/lib/generators/geoblacklight/install_generator.rb +3 -9
  53. data/lib/generators/geoblacklight/templates/assets/_blacklight.scss +1 -0
  54. data/lib/generators/geoblacklight/templates/assets/_customizations.scss +28 -0
  55. data/{app/assets/stylesheets/geoblacklight/application.scss → lib/generators/geoblacklight/templates/assets/_geoblacklight.scss} +0 -1
  56. data/lib/generators/geoblacklight/templates/assets/application.scss +7 -0
  57. data/lib/generators/geoblacklight/templates/{geoblacklight.js → assets/geoblacklight.js} +0 -0
  58. data/lib/generators/geoblacklight/templates/catalog_controller.rb +3 -2
  59. data/lib/generators/geoblacklight/templates/settings.yml +0 -6
  60. data/lib/generators/geoblacklight/webpacker_generator.rb +1 -0
  61. data/lib/geoblacklight.rb +1 -0
  62. data/lib/geoblacklight/bounding_box.rb +1 -0
  63. data/lib/geoblacklight/catalog_helper_override.rb +1 -0
  64. data/lib/geoblacklight/constants.rb +1 -0
  65. data/lib/geoblacklight/download.rb +2 -1
  66. data/lib/geoblacklight/download/geojson_download.rb +1 -0
  67. data/lib/geoblacklight/download/geotiff_download.rb +1 -0
  68. data/lib/geoblacklight/download/hgl_download.rb +1 -0
  69. data/lib/geoblacklight/download/kmz_download.rb +2 -1
  70. data/lib/geoblacklight/download/shapefile_download.rb +1 -0
  71. data/lib/geoblacklight/engine.rb +1 -2
  72. data/lib/geoblacklight/exceptions.rb +1 -0
  73. data/lib/geoblacklight/geoblacklight_helper_behavior.rb +1 -0
  74. data/lib/geoblacklight/item_viewer.rb +1 -0
  75. data/lib/geoblacklight/metadata.rb +1 -0
  76. data/lib/geoblacklight/metadata/base.rb +1 -0
  77. data/lib/geoblacklight/metadata/fgdc.rb +1 -0
  78. data/lib/geoblacklight/metadata/html.rb +2 -2
  79. data/lib/geoblacklight/metadata/iso19139.rb +1 -0
  80. data/lib/geoblacklight/metadata_transformer.rb +1 -0
  81. data/lib/geoblacklight/metadata_transformer/base.rb +1 -0
  82. data/lib/geoblacklight/metadata_transformer/fgdc.rb +1 -0
  83. data/lib/geoblacklight/metadata_transformer/iso19139.rb +1 -0
  84. data/lib/geoblacklight/reference.rb +1 -0
  85. data/lib/geoblacklight/references.rb +7 -3
  86. data/lib/geoblacklight/relation/ancestors.rb +1 -0
  87. data/lib/geoblacklight/relation/descendants.rb +1 -0
  88. data/lib/geoblacklight/relation/relation_response.rb +2 -1
  89. data/lib/geoblacklight/routes.rb +1 -0
  90. data/lib/geoblacklight/routes/downloadable.rb +1 -0
  91. data/lib/geoblacklight/routes/exportable.rb +1 -0
  92. data/lib/geoblacklight/routes/wms.rb +1 -0
  93. data/lib/geoblacklight/version.rb +2 -1
  94. data/lib/geoblacklight/view_helper_override.rb +1 -0
  95. data/lib/geoblacklight/wms_layer.rb +1 -0
  96. data/lib/geoblacklight/wms_layer/feature_info_response.rb +1 -0
  97. data/lib/tasks/geoblacklight.rake +33 -32
  98. data/spec/controllers/catalog_controller_spec.rb +1 -0
  99. data/spec/controllers/download_controller_spec.rb +1 -0
  100. data/spec/controllers/relation_controller_spec.rb +1 -0
  101. data/spec/controllers/wms_controller_spec.rb +1 -0
  102. data/spec/factories/user.rb +1 -0
  103. data/spec/features/bookmarks_spec.rb +1 -0
  104. data/spec/features/configurable_basemap_spec.rb +1 -0
  105. data/spec/features/data_dictionary_download_spec.rb +1 -0
  106. data/spec/features/download_layer_spec.rb +1 -0
  107. data/spec/features/empty_search_spec.rb +1 -0
  108. data/spec/features/esri_viewer_spec.rb +1 -5
  109. data/spec/features/exports_spec.rb +4 -12
  110. data/spec/features/help_text_spec.rb +1 -0
  111. data/spec/features/home_page_spec.rb +6 -0
  112. data/spec/features/iiif_viewer_spec.rb +1 -0
  113. data/spec/features/index_map_spec.rb +1 -0
  114. data/spec/features/layer_inspection_spec.rb +1 -0
  115. data/spec/features/layer_opacity_spec.rb +1 -0
  116. data/spec/features/layer_preview_spec.rb +1 -0
  117. data/spec/features/layer_with_no_references_spec.rb +1 -0
  118. data/spec/features/linkified_attribute_table_spec.rb +1 -0
  119. data/spec/features/metadata_panel_spec.rb +1 -0
  120. data/spec/features/missing_metadata_spec.rb +1 -0
  121. data/spec/features/multiple_downloads_spec.rb +15 -0
  122. data/spec/features/oembed_spec.rb +1 -0
  123. data/spec/features/relations_spec.rb +10 -29
  124. data/spec/features/saved_searches_spec.rb +1 -0
  125. data/spec/features/search_bar_spec.rb +1 -0
  126. data/spec/features/search_results_map_spec.rb +1 -6
  127. data/spec/features/search_results_overlap_ratio_spec.rb +4 -3
  128. data/spec/features/search_spec.rb +1 -0
  129. data/spec/features/show_page_metadata_spec.rb +1 -0
  130. data/spec/features/sms_spec.rb +1 -0
  131. data/spec/features/split_view.html.erb_spec.rb +2 -1
  132. data/spec/features/suppressed_records_spec.rb +1 -0
  133. data/spec/features/web_services_modal_spec.rb +1 -0
  134. data/spec/fixtures/solr_documents/multiple-downloads.json +30 -0
  135. data/spec/helpers/arcgis_helper_spec.rb +1 -0
  136. data/spec/helpers/carto_helper_spec.rb +1 -0
  137. data/spec/helpers/geoblacklight_helper_spec.rb +47 -14
  138. data/spec/javascripts/geoblacklight/viewers/esri/tiled_map_layer_spec.js +12 -0
  139. data/spec/lib/geoblacklight/bounding_box_spec.rb +1 -0
  140. data/spec/lib/geoblacklight/controller_override_spec.rb +1 -0
  141. data/spec/lib/geoblacklight/document_presenter_spec.rb +3 -2
  142. data/spec/lib/geoblacklight/download/geojson_download_spec.rb +1 -0
  143. data/spec/lib/geoblacklight/download/geotiff_download_spec.rb +1 -0
  144. data/spec/lib/geoblacklight/download/hgl_download_spec.rb +1 -0
  145. data/spec/lib/geoblacklight/download/kmz_download_spec.rb +1 -0
  146. data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +1 -0
  147. data/spec/lib/geoblacklight/download_spec.rb +2 -1
  148. data/spec/lib/geoblacklight/geoblacklight_helper_behavior_spec.rb +1 -0
  149. data/spec/lib/geoblacklight/item_viewer_spec.rb +1 -0
  150. data/spec/lib/geoblacklight/metadata/base_spec.rb +1 -0
  151. data/spec/lib/geoblacklight/metadata/html_spec.rb +1 -0
  152. data/spec/lib/geoblacklight/metadata_spec.rb +1 -0
  153. data/spec/lib/geoblacklight/metadata_transformer/base_spec.rb +3 -2
  154. data/spec/lib/geoblacklight/metadata_transformer/fgdc_spec.rb +3 -2
  155. data/spec/lib/geoblacklight/metadata_transformer/iso19139_spec.rb +3 -2
  156. data/spec/lib/geoblacklight/metadata_transformer_spec.rb +4 -3
  157. data/spec/lib/geoblacklight/reference_spec.rb +1 -0
  158. data/spec/lib/geoblacklight/references_spec.rb +2 -3
  159. data/spec/lib/geoblacklight/relation/ancestors_spec.rb +1 -0
  160. data/spec/lib/geoblacklight/relation/descendants_spec.rb +1 -0
  161. data/spec/lib/geoblacklight/relation/relation_response_spec.rb +1 -0
  162. data/spec/lib/geoblacklight/view_helper_override_spec.rb +1 -0
  163. data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +5 -4
  164. data/spec/lib/geoblacklight/wms_layer_spec.rb +1 -0
  165. data/spec/models/concerns/geoblacklight/solr_document/carto_spec.rb +1 -20
  166. data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +1 -0
  167. data/spec/models/concerns/geoblacklight/solr_document/finder_spec.rb +1 -0
  168. data/spec/models/concerns/geoblacklight/solr_document/inspection_spec.rb +1 -0
  169. data/spec/models/concerns/geoblacklight/solr_document_spec.rb +1 -0
  170. data/spec/models/concerns/geoblacklight/spatial_search_behavior_spec.rb +15 -2
  171. data/spec/routing/catalog_routing_spec.rb +1 -0
  172. data/spec/spec_helper.rb +12 -9
  173. data/spec/support/backport_test_helpers.rb +1 -0
  174. data/spec/support/features.rb +1 -0
  175. data/spec/support/features/session_helpers.rb +1 -0
  176. data/spec/support/fixtures.rb +1 -0
  177. data/spec/tasks/geoblacklight_spec.rb +4 -3
  178. data/spec/teaspoon_env.rb +1 -0
  179. data/spec/test_app_templates/lib/generators/test_app_generator.rb +1 -0
  180. data/spec/views/catalog/_document_split.html.erb_spec.rb +1 -0
  181. data/spec/views/catalog/_index_split.html.erb_spec.rb +1 -0
  182. data/spec/views/catalog/_results_pagination.html.erb_spec.rb +1 -0
  183. data/spec/views/catalog/_show_downloads.html.erb_spec.rb +1 -0
  184. data/spec/views/catalog/_show_tools.html.erb_spec.rb +2 -4
  185. data/template.rb +1 -0
  186. metadata +42 -68
  187. data/app/assets/stylesheets/geoblacklight/_geoblacklight.scss +0 -36
  188. data/app/assets/stylesheets/geoblacklight/modules/relations.scss +0 -15
  189. data/app/views/catalog/_exports.html.erb +0 -3
  190. data/app/views/catalog/_show_tools.html.erb +0 -25
  191. data/lib/generators/geoblacklight/templates/geoblacklight.scss +0 -4
  192. data/vendor/assets/javascripts/readmore.js +0 -0
  193. data/vendor/assets/javascripts/readmore.min.js +0 -0
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::GeoblacklightHelperBehavior do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::ItemViewer do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::Metadata::Base do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::Metadata::Html do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::Metadata do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::MetadataTransformer::Base do
@@ -8,8 +9,8 @@ describe Geoblacklight::MetadataTransformer::Base do
8
9
  end
9
10
 
10
11
  context 'with metadata types without XSL Stylesheets' do
11
- let(:metadata) { instance_double(GeoCombine::Metadata) }
12
12
  subject { described_class.new(metadata) }
13
+ let(:metadata) { instance_double(GeoCombine::Metadata) }
13
14
  describe '#transform' do
14
15
  before do
15
16
  allow(metadata).to receive(:to_html).and_raise(NoMethodError, 'undefined method `to_html\'')
@@ -21,8 +22,8 @@ describe Geoblacklight::MetadataTransformer::Base do
21
22
  end
22
23
 
23
24
  context 'with metadata types with XSL Stylesheets but invalid HTML' do
24
- let(:metadata) { instance_double(GeoCombine::Metadata) }
25
25
  subject { described_class.new(metadata) }
26
+ let(:metadata) { instance_double(GeoCombine::Metadata) }
26
27
  describe '#transform' do
27
28
  before do
28
29
  allow(metadata).to receive(:to_html).and_return('<invalid-html></invalid-html>')
@@ -1,11 +1,12 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::MetadataTransformer::Fgdc do
4
- let(:fgdc_html) { File.read(File.join(Rails.root, 'spec', 'fixtures', 'metadata', 'fgdc.html')) }
5
- let(:metadata) { instance_double('Geoblacklight::Metadata::Fgdc') }
6
5
  subject do
7
6
  described_class.new(metadata)
8
7
  end
8
+ let(:fgdc_html) { File.read(Rails.root.join('spec', 'fixtures', 'metadata', 'fgdc.html')) }
9
+ let(:metadata) { instance_double('Geoblacklight::Metadata::Fgdc') }
9
10
 
10
11
  describe '#transform' do
11
12
  before do
@@ -1,11 +1,12 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::MetadataTransformer::Iso19139 do
4
- let(:iso_html) { File.read(File.join(Rails.root, 'spec', 'fixtures', 'metadata', 'iso.html')) }
5
- let(:metadata) { instance_double('Geoblacklight::Metadata::Iso19139') }
6
5
  subject do
7
6
  described_class.new(metadata)
8
7
  end
8
+ let(:iso_html) { File.read(Rails.root.join('spec', 'fixtures', 'metadata', 'iso.html')) }
9
+ let(:metadata) { instance_double('Geoblacklight::Metadata::Iso19139') }
9
10
 
10
11
  describe '#transform' do
11
12
  before do
@@ -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::Reference do
@@ -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(iso19139 mods)
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
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::Relation::Descendants do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::Relation::RelationResponse do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::ViewHelperOverride do
@@ -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(Header1 value1)
32
- expect(response.format[:values][1]).to eq %w(Header2 value2)
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(Header1 value1)
38
- expect(response_multiple_features.format[:values][1]).to eq %w(Header2 value2)
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
@@ -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
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::SolrDocument::Citation do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::SolrDocument::Finder do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::SolrDocument::Inspection do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Geoblacklight::SolrDocument 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) { Hash.new }
7
- let(:solr_params) { Hash.new }
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)
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe 'Catalog Routes', type: :routing do
@@ -1,17 +1,19 @@
1
+ # frozen_string_literal: true
1
2
  ENV['RAILS_ENV'] ||= 'test'
2
3
 
3
4
  require 'simplecov'
4
- require 'coveralls'
5
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new(
6
- [
7
- SimpleCov::Formatter::HTMLFormatter,
8
- Coveralls::SimpleCov::Formatter
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/geoblacklight/templates'
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 :each do
62
+ config.before do
60
63
  DatabaseCleaner.strategy = if Capybara.current_driver == :rack_test
61
64
  :transaction
62
65
  else
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  # Backport the Rails 5 controller test methods to Rails 4
2
3
  module BackportTestHelpers
3
4
  def delete(*args)
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require File.expand_path('../features/session_helpers.rb', __FILE__)
2
3
 
3
4
  RSpec.configure do |config|
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  module Features
2
3
  module SessionHelpers
3
4
  def sign_up_with(email, password)
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  def read_fixture(fname)
2
3
  File.read(File.join(fixture_dir, fname))
3
4
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
  require 'rake'
3
4
  require 'fileutils'
@@ -6,13 +7,13 @@ describe 'geoblacklight.rake' do
6
7
  describe 'geoblacklight:downloads:mkdir' do
7
8
  before do
8
9
  Rails.application.load_tasks
9
- FileUtils.rm_rf Rails.root.join('tmp/cache/downloads')
10
+ FileUtils.rm_rf Rails.root.join('tmp', 'cache', 'downloads')
10
11
  end
11
12
 
12
13
  it 'creates the tmp/cache/downloads directory' do
13
14
  Rake::Task['geoblacklight:downloads:mkdir'].invoke
14
- expect(File.directory? Rails.root.join('tmp/cache/downloads')).
15
- to be true
15
+ expect(File.directory?(Rails.root.join('tmp', 'cache', 'downloads')))
16
+ .to be true
16
17
  end
17
18
  end
18
19
  end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  unless defined?(Rails)
2
3
  ENV['RAILS_ROOT'] = File.expand_path('../../', __FILE__)
3
4
  require File.expand_path('../../config/environment', __FILE__)
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'rails/generators'
2
3
 
3
4
  class TestAppGenerator < Rails::Generators::Base
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe 'catalog/_document_split.html.erb' do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe 'catalog/_document_split.html.erb' do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe 'catalog/_results_pagination.html.erb', type: :view do
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  describe 'catalog/_show_downloads.html.erb', type: :view do
@@ -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'