qa 2.1.1 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +22 -3
  3. data/app/controllers/qa/application_controller.rb +2 -0
  4. data/app/controllers/qa/linked_data_terms_controller.rb +108 -49
  5. data/config/initializers/linked_data_authorities.rb +1 -17
  6. data/config/routes.rb +3 -0
  7. data/lib/generators/qa/apidoc/USAGE +11 -0
  8. data/lib/generators/qa/apidoc/apidoc_generator.rb +22 -0
  9. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/apidoc.json +1322 -0
  10. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/favicon-16x16.png +0 -0
  11. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/favicon-32x32.png +0 -0
  12. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/index.html +61 -0
  13. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/oauth2-redirect.html +67 -0
  14. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui-bundle.js +93 -0
  15. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui-bundle.js.map +1 -0
  16. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui-standalone-preset.js +14 -0
  17. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui-standalone-preset.js.map +1 -0
  18. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui.css +3 -0
  19. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui.css.map +1 -0
  20. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui.js +9 -0
  21. data/lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui.js.map +1 -0
  22. data/lib/generators/qa/install/install_generator.rb +7 -0
  23. data/lib/generators/qa/install/templates/config/initializers/qa.rb +6 -0
  24. data/lib/qa/authorities/getty/aat.rb +13 -6
  25. data/lib/qa/authorities/getty/tgn.rb +10 -21
  26. data/lib/qa/authorities/getty/ulan.rb +12 -15
  27. data/lib/qa/authorities/linked_data.rb +1 -0
  28. data/lib/qa/authorities/linked_data/authority_service.rb +47 -0
  29. data/lib/qa/authorities/linked_data/config.rb +1 -1
  30. data/lib/qa/authorities/linked_data/find_term.rb +2 -1
  31. data/lib/qa/authorities/linked_data/generic_authority.rb +8 -1
  32. data/lib/qa/authorities/loc/generic_authority.rb +2 -2
  33. data/lib/qa/configuration.rb +18 -0
  34. data/lib/qa/version.rb +1 -1
  35. data/spec/controllers/linked_data_terms_controller_spec.rb +175 -35
  36. data/spec/controllers/terms_controller_spec.rb +2 -2
  37. data/spec/fixtures/authorities/linked_data/lod_term_uri_param_config.json +27 -0
  38. data/spec/lib/authorities/getty/aat_spec.rb +14 -9
  39. data/spec/lib/authorities/getty/tgn_spec.rb +6 -17
  40. data/spec/lib/authorities/getty/ulan_spec.rb +5 -5
  41. data/spec/lib/authorities/linked_data/authority_service_spec.rb +46 -0
  42. data/spec/lib/authorities/linked_data/generic_authority_spec.rb +0 -84
  43. data/spec/lib/authorities/loc_spec.rb +9 -9
  44. data/spec/lib/configuration_spec.rb +58 -0
  45. metadata +42 -14
  46. data/config/authorities/linked_data/agrovoc.json +0 -61
  47. data/spec/fixtures/lod_agrovoc_query_many_results.json +0 -1
  48. data/spec/fixtures/lod_agrovoc_query_no_results.json +0 -1
  49. data/spec/fixtures/lod_agrovoc_term_found.rdf.xml +0 -217
@@ -77,19 +77,19 @@ describe Qa::Authorities::Getty::Ulan do
77
77
  foaf:focus/gvp:biographyPreferred [schema:description ?bio] ;
78
78
  skos:altLabel ?alt .
79
79
  FILTER regex(?name, "search_term", "i") .
80
- } ORDER BY ?name' }
80
+ } ORDER BY ?name'.gsub(/[\s\n]+/, ' ') }
81
81
  end
82
82
  context "using a two subject terms" do
83
83
  subject { authority.sparql('search term') }
84
84
  it {
85
- is_expected.to eq "SELECT DISTINCT ?s ?name ?bio {
86
- ?s a skos:Concept; luc:term \"search term\";
85
+ is_expected.to eq %(SELECT DISTINCT ?s ?name ?bio {
86
+ ?s a skos:Concept; luc:term "search term";
87
87
  skos:inScheme <http://vocab.getty.edu/ulan/> ;
88
88
  gvp:prefLabelGVP [skosxl:literalForm ?name] ;
89
89
  foaf:focus/gvp:biographyPreferred [schema:description ?bio] ;
90
90
  skos:altLabel ?alt .
91
- FILTER (regex(CONCAT(?name, ' ', ?alt), \"search\",\"i\" ) && regex(CONCAT(?name, ' ', ?alt), \"term\",\"i\" ) ) .
92
- } ORDER BY ?name" }
91
+ FILTER ((regex(?name, "search", "i") || regex(?alt, "search", "i")) && (regex(?name, "term", "i") || regex(?alt, "term", "i"))) .
92
+ } ORDER BY ?name).gsub(/[\s\n]+/, ' ') }
93
93
  end
94
94
  end
95
95
  end
@@ -0,0 +1,46 @@
1
+ require 'spec_helper'
2
+
3
+ describe Qa::Authorities::LinkedData::AuthorityService do
4
+ let(:auth_names) do
5
+ [:LOC,
6
+ :LOD_ENCODING_CONFIG,
7
+ :LOD_FULL_CONFIG,
8
+ :LOD_LANG_DEFAULTS,
9
+ :LOD_LANG_MULTI_DEFAULTS,
10
+ :LOD_LANG_NO_DEFAULTS,
11
+ :LOD_LANG_PARAM,
12
+ :LOD_MIN_CONFIG,
13
+ :LOD_SEARCH_ONLY_CONFIG,
14
+ :LOD_SORT,
15
+ :LOD_TERM_ID_PARAM_CONFIG,
16
+ :LOD_TERM_ONLY_CONFIG,
17
+ :LOD_TERM_URI_PARAM_CONFIG,
18
+ :OCLC_FAST]
19
+ end
20
+
21
+ describe '#authority_configs' do
22
+ let(:result) { described_class.authority_configs }
23
+ it 'returns all authorities' do
24
+ expect(result).to be_kind_of(Hash)
25
+ expect(result.keys).to match_array auth_names
26
+ expect(result.values.first).to be_kind_of(Hash)
27
+ expect(result.values.first).to have_key(:term)
28
+ expect(result.values.first).to have_key(:search)
29
+ end
30
+ end
31
+
32
+ describe '#authority_config' do
33
+ let(:result) { described_class.authority_config(:LOD_FULL_CONFIG) }
34
+ it 'returns a single authority' do
35
+ expect(result).to be_kind_of(Hash)
36
+ expect(result).to have_key(:term)
37
+ expect(result).to have_key(:search)
38
+ end
39
+ end
40
+
41
+ describe '#authority_names' do
42
+ it "returns a list of all authorities' names" do
43
+ expect(described_class.authority_names).to eq auth_names
44
+ end
45
+ end
46
+ end
@@ -3,7 +3,6 @@ require 'spec_helper'
3
3
  RSpec.describe Qa::Authorities::LinkedData::GenericAuthority do
4
4
  describe '#search' do
5
5
  let(:lod_oclc) { described_class.new(:OCLC_FAST) }
6
- let(:lod_agrovoc) { described_class.new(:AGROVOC) }
7
6
 
8
7
  context 'in OCLC_FAST authority' do
9
8
  context '0 search results' do
@@ -59,33 +58,6 @@ RSpec.describe Qa::Authorities::LinkedData::GenericAuthority do
59
58
  end
60
59
  end
61
60
 
62
- context 'in AGROVOC authority' do
63
- context '0 search results' do
64
- let :results do
65
- stub_request(:get, 'http://artemide.art.uniroma2.it:8081/agrovoc/rest/v1/search/?lang=en&query=*supercalifragilisticexpialidocious*')
66
- .to_return(status: 200, body: webmock_fixture('lod_agrovoc_query_no_results.json'), headers: { 'Content-Type' => 'application/json' })
67
- lod_agrovoc.search('supercalifragilisticexpialidocious')
68
- end
69
- it 'returns an empty array' do
70
- expect(results).to eq([])
71
- end
72
- end
73
-
74
- context '3 search results' do
75
- let :results do
76
- stub_request(:get, 'http://artemide.art.uniroma2.it:8081/agrovoc/rest/v1/search/?lang=en&query=*milk*')
77
- .to_return(status: 200, body: webmock_fixture('lod_agrovoc_query_many_results.json'), headers: { 'Content-Type' => 'application/json' })
78
- lod_agrovoc.search('milk')
79
- end
80
- it 'is correctly parsed' do
81
- expect(results.count).to eq(64)
82
- expect(results.first).to eq(uri: 'http://aims.fao.org/aos/agrovoc/c_8602', id: 'http://aims.fao.org/aos/agrovoc/c_8602', label: 'acidophilus milk')
83
- expect(results.second).to eq(uri: 'http://aims.fao.org/aos/agrovoc/c_16076', id: 'http://aims.fao.org/aos/agrovoc/c_16076', label: 'buffalo milk')
84
- expect(results.third).to eq(uri: 'http://aims.fao.org/aos/agrovoc/c_9513', id: 'http://aims.fao.org/aos/agrovoc/c_9513', label: 'buttermilk')
85
- end
86
- end
87
- end
88
-
89
61
  # context 'in LOC authority' do
90
62
  # ###################################
91
63
  # ### SEARCH NOT SUPPORTED BY LOC ###
@@ -190,7 +162,6 @@ RSpec.describe Qa::Authorities::LinkedData::GenericAuthority do
190
162
 
191
163
  describe '#find' do
192
164
  let(:lod_oclc) { described_class.new(:OCLC_FAST) }
193
- let(:lod_agrovoc) { described_class.new(:AGROVOC) }
194
165
  let(:lod_loc) { described_class.new(:LOC) }
195
166
 
196
167
  context 'basic parameter testing' do
@@ -275,61 +246,6 @@ RSpec.describe Qa::Authorities::LinkedData::GenericAuthority do
275
246
  end
276
247
  end
277
248
 
278
- context 'in AGROVOC authority' do
279
- context 'term found' do
280
- let :results do
281
- stub_request(:get, 'http://artemide.art.uniroma2.it:8081/agrovoc/rest/v1/data?uri=http://aims.fao.org/aos/agrovoc/c_9513')
282
- .to_return(status: 200, body: webmock_fixture('lod_agrovoc_term_found.rdf.xml'), headers: { 'Content-Type' => 'application/rdf+xml' })
283
- lod_agrovoc.find('c_9513')
284
- end
285
- it 'has correct primary predicate values' do
286
- expect(results[:uri]).to eq('http://aims.fao.org/aos/agrovoc/c_9513')
287
- expect(results[:id]).to eq('http://aims.fao.org/aos/agrovoc/c_9513')
288
- expect(results[:label]).to eq ['buttermilk']
289
- expect(results[:broader]).to eq ['http://aims.fao.org/aos/agrovoc/c_4830']
290
- expect(results[:sameas]).to include('http://cat.aii.caas.cn/concept/c_26308', 'http://lod.nal.usda.gov/nalt/20627', 'http://d-nb.info/gnd/4147072-2')
291
- end
292
-
293
- it 'has correct number of predicates in pred-obj list' do
294
- expect(results['predicates'].count).to eq 12
295
- end
296
-
297
- it 'has primary predicates in pred-obj list' do
298
- expect(results['predicates']['http://www.w3.org/2004/02/skos/core#prefLabel']).to eq ['buttermilk']
299
- expect(results['predicates']['http://www.w3.org/2004/02/skos/core#broader']).to eq ['http://aims.fao.org/aos/agrovoc/c_4830']
300
- expect(results['predicates']['http://www.w3.org/2004/02/skos/core#exactMatch'])
301
- .to include('http://cat.aii.caas.cn/concept/c_26308', 'http://lod.nal.usda.gov/nalt/20627',
302
- 'http://d-nb.info/gnd/4147072-2')
303
- end
304
-
305
- it 'has skos predicate values' do
306
- expect(results['predicates']['http://www.w3.org/2008/05/skos-xl#prefLabel'])
307
- .to include('http://aims.fao.org/aos/agrovoc/xl_es_1299487482038', 'http://aims.fao.org/aos/agrovoc/xl_it_1299487482154',
308
- 'http://aims.fao.org/aos/agrovoc/xl_ko_1299487482210', 'http://aims.fao.org/aos/agrovoc/xl_pl_1299487482273',
309
- 'http://aims.fao.org/aos/agrovoc/xl_sk_1299487482378', 'http://aims.fao.org/aos/agrovoc/xl_en_1299487482019',
310
- 'http://aims.fao.org/aos/agrovoc/xl_tr_9513_1321792194941',
311
- 'http://aims.fao.org/aos/agrovoc/xl_de_1299487482000', 'http://aims.fao.org/aos/agrovoc/xl_fa_1299487482058',
312
- 'http://aims.fao.org/aos/agrovoc/xl_th_1299487482417', 'http://aims.fao.org/aos/agrovoc/xl_fr_1299487482080',
313
- 'http://aims.fao.org/aos/agrovoc/xl_hi_1299487482102', 'http://aims.fao.org/aos/agrovoc/xl_ar_1299487481966',
314
- 'http://aims.fao.org/aos/agrovoc/xl_ja_1299487482181', 'http://aims.fao.org/aos/agrovoc/xl_lo_1299487482240',
315
- 'http://aims.fao.org/aos/agrovoc/xl_ru_1299487482341', 'http://aims.fao.org/aos/agrovoc/xl_cs_1299487481982',
316
- 'http://aims.fao.org/aos/agrovoc/xl_zh_1299487482458', 'http://aims.fao.org/aos/agrovoc/xl_pt_1299487482307',
317
- 'http://aims.fao.org/aos/agrovoc/xl_hu_1299487482127')
318
- expect(results['predicates']['http://www.w3.org/2004/02/skos/core#inScheme']).to eq ['http://aims.fao.org/aos/agrovoc']
319
- expect(results['predicates']['http://www.w3.org/2004/02/skos/core#closeMatch']).to eq ['http://dbpedia.org/resource/Buttermilk']
320
- expect(results['predicates']['http://www.w3.org/2008/05/skos-xl#altLabel']).to eq ['http://aims.fao.org/aos/agrovoc/xl_fa_1299487482544']
321
- end
322
-
323
- it 'has more unspecified predicate values' do
324
- expect(results['predicates']['http://www.w3.org/1999/02/22-rdf-syntax-ns#type']).to eq ['http://www.w3.org/2004/02/skos/core#Concept']
325
- expect(results['predicates']['http://purl.org/dc/terms/created']).to eq ['2011-11-20T20:29:54Z']
326
- expect(results['predicates']['http://purl.org/dc/terms/modified']).to eq ['2014-07-03T18:51:03Z']
327
- expect(results['predicates']['http://rdfs.org/ns/void#inDataset']).to eq ['http://aims.fao.org/aos/agrovoc/void.ttl#Agrovoc']
328
- expect(results['predicates']['http://art.uniroma2.it/ontologies/vocbench#hasStatus']).to eq ['Published']
329
- end
330
- end
331
- end
332
-
333
249
  context 'in LOC authority' do
334
250
  context 'term found' do
335
251
  let :results do
@@ -28,14 +28,14 @@ describe Qa::Authorities::Loc do
28
28
  end
29
29
 
30
30
  context "for searching" do
31
- let(:url) { 'http://id.loc.gov/search/?q=foo&q=cs%3Ahttp%3A%2F%2Fid.loc.gov%2Fauthorities%2Fsubjects&format=json' }
31
+ let(:url) { 'https://id.loc.gov/search/?q=foo&q=cs%3Ahttp%3A%2F%2Fid.loc.gov%2Fauthorities%2Fsubjects&format=json' }
32
32
  it "returns a url" do
33
33
  expect(authority.build_query_url("foo")).to eq(url)
34
34
  end
35
35
  end
36
36
 
37
37
  context "for returning single terms" do
38
- let(:url) { "http://id.loc.gov/authorities/subjects/sh2002003586.json" }
38
+ let(:url) { "https://id.loc.gov/authorities/subjects/sh2002003586.json" }
39
39
  it "returns a url with an authority and id" do
40
40
  expect(authority.find_url("sh2002003586")).to eq(url)
41
41
  end
@@ -49,15 +49,15 @@ describe Qa::Authorities::Loc do
49
49
  end
50
50
 
51
51
  before do
52
- stub_request(:get, "http://id.loc.gov/search/?format=json&q=cs:http://id.loc.gov/authorities/subjects")
52
+ stub_request(:get, "https://id.loc.gov/search/?format=json&q=cs:http://id.loc.gov/authorities/subjects")
53
53
  .with(headers: { 'Accept' => 'application/json' })
54
54
  .to_return(status: 200, body: "")
55
55
  end
56
56
 
57
57
  context "with flat params encoded" do
58
- let(:url) { 'http://id.loc.gov/search/?q=foo&q=cs%3Ahttp%3A%2F%2Fid.loc.gov%2Fauthorities%2Fsubjects&format=json' }
58
+ let(:url) { 'https://id.loc.gov/search/?q=foo&q=cs%3Ahttp%3A%2F%2Fid.loc.gov%2Fauthorities%2Fsubjects&format=json' }
59
59
  it "returns a response" do
60
- flat_params_url = "http://id.loc.gov/search/?format=json&q=foo&q=cs%3Ahttp%3A%2F%2Fid.loc.gov%2Fauthorities%2Fsubjects"
60
+ flat_params_url = "https://id.loc.gov/search/?format=json&q=foo&q=cs%3Ahttp%3A%2F%2Fid.loc.gov%2Fauthorities%2Fsubjects"
61
61
  expect(subject.env.url.to_s).to eq(flat_params_url)
62
62
  end
63
63
  end
@@ -66,7 +66,7 @@ describe Qa::Authorities::Loc do
66
66
  describe "#search" do
67
67
  context "any LOC authorities" do
68
68
  let :authority do
69
- stub_request(:get, "http://id.loc.gov/search/?format=json&q=s&q=cs:http://id.loc.gov/vocabulary/geographicAreas")
69
+ stub_request(:get, "https://id.loc.gov/search/?format=json&q=s&q=cs:http://id.loc.gov/vocabulary/geographicAreas")
70
70
  .with(headers: { 'Accept' => 'application/json' })
71
71
  .to_return(body: webmock_fixture("loc-response.txt"), status: 200)
72
72
  described_class.subauthority_for("geographicAreas")
@@ -95,7 +95,7 @@ describe Qa::Authorities::Loc do
95
95
 
96
96
  context "subject terms" do
97
97
  let :results do
98
- stub_request(:get, "http://id.loc.gov/search/?format=json&q=History--&q=cs:http://id.loc.gov/authorities/subjects")
98
+ stub_request(:get, "https://id.loc.gov/search/?format=json&q=History--&q=cs:http://id.loc.gov/authorities/subjects")
99
99
  .with(headers: { 'Accept' => 'application/json' })
100
100
  .to_return(body: webmock_fixture("loc-subjects-response.txt"), status: 200)
101
101
  described_class.subauthority_for("subjects").search("History--")
@@ -111,7 +111,7 @@ describe Qa::Authorities::Loc do
111
111
 
112
112
  context "name terms" do
113
113
  let :results do
114
- stub_request(:get, "http://id.loc.gov/search/?format=json&q=Berry&q=cs:http://id.loc.gov/authorities/names")
114
+ stub_request(:get, "https://id.loc.gov/search/?format=json&q=Berry&q=cs:http://id.loc.gov/authorities/names")
115
115
  .with(headers: { 'Accept' => 'application/json' })
116
116
  .to_return(body: webmock_fixture("loc-names-response.txt"), status: 200)
117
117
  described_class.subauthority_for("names").search("Berry")
@@ -125,7 +125,7 @@ describe Qa::Authorities::Loc do
125
125
  describe "#find" do
126
126
  context "using a subject id" do
127
127
  let :results do
128
- stub_request(:get, "http://id.loc.gov/authorities/subjects/sh2002003586.json")
128
+ stub_request(:get, "https://id.loc.gov/authorities/subjects/sh2002003586.json")
129
129
  .with(headers: { 'Accept' => 'application/json' })
130
130
  .to_return(status: 200, body: webmock_fixture("loc-subject-find-response.txt"), headers: {})
131
131
  described_class.subauthority_for("subjects").find("sh2002003586")
@@ -0,0 +1,58 @@
1
+ RSpec.describe Qa::Configuration do
2
+ subject { described_class.new }
3
+
4
+ it { is_expected.to respond_to(:cors_headers?) }
5
+ it { is_expected.to respond_to(:enable_cors_headers) }
6
+ it { is_expected.to respond_to(:disable_cors_headers) }
7
+ it { is_expected.to respond_to(:authorized_reload_token=) }
8
+ it { is_expected.to respond_to(:authorized_reload_token) }
9
+ it { is_expected.to respond_to(:valid_authority_reload_token?) }
10
+
11
+ describe '#enable_cors_headers' do
12
+ it 'turns on cors headers support' do
13
+ subject.enable_cors_headers
14
+ expect(subject.cors_headers?).to be true
15
+ end
16
+ end
17
+
18
+ describe '#disable_cors_headers' do
19
+ it 'turns off cors headers support' do
20
+ subject.disable_cors_headers
21
+ expect(subject.cors_headers?).to be false
22
+ end
23
+ end
24
+
25
+ describe '#valid_authority_reload_token?' do
26
+ it 'defaults to invalid' do
27
+ expect(subject.valid_authority_reload_token?('any value')).to be false
28
+ end
29
+
30
+ context 'when token is set to blank' do
31
+ before do
32
+ subject.authorized_reload_token = ''
33
+ end
34
+
35
+ it 'returns false if token matches' do
36
+ expect(subject.valid_authority_reload_token?('')).to be false
37
+ end
38
+
39
+ it "returns false if token doesn't match" do
40
+ expect(subject.valid_authority_reload_token?('any value')).to be false
41
+ end
42
+ end
43
+
44
+ context 'when token has a value' do
45
+ before do
46
+ subject.authorized_reload_token = 'A_TOKEN'
47
+ end
48
+
49
+ it 'returns true if the passed in token matches' do
50
+ expect(subject.valid_authority_reload_token?('A_TOKEN')).to be true
51
+ end
52
+
53
+ it 'returns false if the passed in token does not match' do
54
+ expect(subject.valid_authority_reload_token?('BAD TOKEN')).to be false
55
+ end
56
+ end
57
+ end
58
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qa
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen Anderson
@@ -13,10 +13,10 @@ authors:
13
13
  - Mike Stroming
14
14
  - Adam Wead
15
15
  - E. Lynette Rayle
16
- autorequire:
16
+ autorequire:
17
17
  bindir: bin
18
18
  cert_chain: []
19
- date: 2018-09-07 00:00:00.000000000 Z
19
+ date: 2020-08-14 00:00:00.000000000 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  name: activerecord-import
@@ -228,6 +228,20 @@ dependencies:
228
228
  - - ">="
229
229
  - !ruby/object:Gem::Version
230
230
  version: '0'
231
+ - !ruby/object:Gem::Dependency
232
+ name: swagger-docs
233
+ requirement: !ruby/object:Gem::Requirement
234
+ requirements:
235
+ - - ">="
236
+ - !ruby/object:Gem::Version
237
+ version: '0'
238
+ type: :development
239
+ prerelease: false
240
+ version_requirements: !ruby/object:Gem::Requirement
241
+ requirements:
242
+ - - ">="
243
+ - !ruby/object:Gem::Version
244
+ version: '0'
231
245
  - !ruby/object:Gem::Dependency
232
246
  name: webmock
233
247
  requirement: !ruby/object:Gem::Requirement
@@ -263,7 +277,6 @@ files:
263
277
  - app/models/qa/subject_mesh_term.rb
264
278
  - app/views/layouts/qa/application.html.erb
265
279
  - config/authorities.yml
266
- - config/authorities/linked_data/agrovoc.json
267
280
  - config/authorities/linked_data/loc.json
268
281
  - config/authorities/linked_data/oclc_fast.json
269
282
  - config/authorities/states.yml
@@ -274,6 +287,21 @@ files:
274
287
  - db/migrate/20130917200611_create_qa_subject_mesh_terms.rb
275
288
  - db/migrate/20130917201026_create_qa_mesh_tree.rb
276
289
  - db/migrate/20130918141523_add_term_lower_to_qa_subject_mesh_terms.rb
290
+ - lib/generators/qa/apidoc/USAGE
291
+ - lib/generators/qa/apidoc/apidoc_generator.rb
292
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/apidoc.json
293
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/favicon-16x16.png
294
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/favicon-32x32.png
295
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/index.html
296
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/oauth2-redirect.html
297
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui-bundle.js
298
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui-bundle.js.map
299
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui-standalone-preset.js
300
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui-standalone-preset.js.map
301
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui.css
302
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui.css.map
303
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui.js
304
+ - lib/generators/qa/apidoc/templates/public/qa/apidoc/swagger-ui.js.map
277
305
  - lib/generators/qa/install/USAGE
278
306
  - lib/generators/qa/install/install_generator.rb
279
307
  - lib/generators/qa/install/templates/config/initializers/qa.rb
@@ -301,6 +329,7 @@ files:
301
329
  - lib/qa/authorities/getty/tgn.rb
302
330
  - lib/qa/authorities/getty/ulan.rb
303
331
  - lib/qa/authorities/linked_data.rb
332
+ - lib/qa/authorities/linked_data/authority_service.rb
304
333
  - lib/qa/authorities/linked_data/config.rb
305
334
  - lib/qa/authorities/linked_data/config/search_config.rb
306
335
  - lib/qa/authorities/linked_data/config/term_config.rb
@@ -354,6 +383,7 @@ files:
354
383
  - spec/fixtures/authorities/linked_data/lod_sort.json
355
384
  - spec/fixtures/authorities/linked_data/lod_term_id_param_config.json
356
385
  - spec/fixtures/authorities/linked_data/lod_term_only_config.json
386
+ - spec/fixtures/authorities/linked_data/lod_term_uri_param_config.json
357
387
  - spec/fixtures/funders-find-response.json
358
388
  - spec/fixtures/funders-noquery.json
359
389
  - spec/fixtures/funders-noresults.json
@@ -373,9 +403,6 @@ files:
373
403
  - spec/fixtures/loc-response.txt
374
404
  - spec/fixtures/loc-subject-find-response.txt
375
405
  - spec/fixtures/loc-subjects-response.txt
376
- - spec/fixtures/lod_agrovoc_query_many_results.json
377
- - spec/fixtures/lod_agrovoc_query_no_results.json
378
- - spec/fixtures/lod_agrovoc_term_found.rdf.xml
379
406
  - spec/fixtures/lod_lang_search_en.rdf.xml
380
407
  - spec/fixtures/lod_lang_search_enfr.rdf.xml
381
408
  - spec/fixtures/lod_lang_search_enfrde.rdf.xml
@@ -405,6 +432,7 @@ files:
405
432
  - spec/lib/authorities/getty/tgn_spec.rb
406
433
  - spec/lib/authorities/getty/ulan_spec.rb
407
434
  - spec/lib/authorities/getty_spec.rb
435
+ - spec/lib/authorities/linked_data/authority_service_spec.rb
408
436
  - spec/lib/authorities/linked_data/config_spec.rb
409
437
  - spec/lib/authorities/linked_data/find_term_spec.rb
410
438
  - spec/lib/authorities/linked_data/generic_authority_spec.rb
@@ -420,6 +448,7 @@ files:
420
448
  - spec/lib/authorities/table_based_authority_spec.rb
421
449
  - spec/lib/authorities/tgnlang_spec.rb
422
450
  - spec/lib/authorities_loc_subauthorities.rb
451
+ - spec/lib/configuration_spec.rb
423
452
  - spec/lib/mesh_data_parser_spec.rb
424
453
  - spec/lib/services/rdf_authority_parser_spec.rb
425
454
  - spec/lib/tasks/mesh.rake_spec.rb
@@ -434,7 +463,7 @@ homepage: https://github.com/projecthydra/questioning_authority
434
463
  licenses:
435
464
  - APACHE-2
436
465
  metadata: {}
437
- post_install_message:
466
+ post_install_message:
438
467
  rdoc_options: []
439
468
  require_paths:
440
469
  - lib
@@ -449,9 +478,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
449
478
  - !ruby/object:Gem::Version
450
479
  version: '0'
451
480
  requirements: []
452
- rubyforge_project:
453
- rubygems_version: 2.6.14
454
- signing_key:
481
+ rubygems_version: 3.0.8
482
+ signing_key:
455
483
  specification_version: 4
456
484
  summary: You should question your authorities.
457
485
  test_files:
@@ -461,10 +489,12 @@ test_files:
461
489
  - spec/test_app_templates/lib/generators/test_app_generator.rb
462
490
  - spec/test_app_templates/Gemfile.extra
463
491
  - spec/lib/tasks/mesh.rake_spec.rb
492
+ - spec/lib/configuration_spec.rb
464
493
  - spec/lib/authorities_loc_subauthorities.rb
465
494
  - spec/lib/mesh_data_parser_spec.rb
466
495
  - spec/lib/authorities/linked_data/config_spec.rb
467
496
  - spec/lib/authorities/linked_data/search_config_spec.rb
497
+ - spec/lib/authorities/linked_data/authority_service_spec.rb
468
498
  - spec/lib/authorities/linked_data/search_query_spec.rb
469
499
  - spec/lib/authorities/linked_data/term_config_spec.rb
470
500
  - spec/lib/authorities/linked_data/find_term_spec.rb
@@ -519,8 +549,6 @@ test_files:
519
549
  - spec/fixtures/funders-find-response.json
520
550
  - spec/fixtures/lexvo_snippet.rdf.xml
521
551
  - spec/fixtures/journals-find-response.json
522
- - spec/fixtures/lod_agrovoc_term_found.rdf.xml
523
- - spec/fixtures/lod_agrovoc_query_many_results.json
524
552
  - spec/fixtures/lod_lang_search_en.rdf.xml
525
553
  - spec/fixtures/lod_lang_term_en.rdf.xml
526
554
  - spec/fixtures/journals-noresults.json
@@ -535,6 +563,7 @@ test_files:
535
563
  - spec/fixtures/authorities/linked_data/lod_lang_defaults.json
536
564
  - spec/fixtures/authorities/linked_data/lod_term_only_config.json
537
565
  - spec/fixtures/authorities/linked_data/lod_lang_no_defaults.json
566
+ - spec/fixtures/authorities/linked_data/lod_term_uri_param_config.json
538
567
  - spec/fixtures/authorities/linked_data/lod_full_config.json
539
568
  - spec/fixtures/authorities/linked_data/lod_lang_param.json
540
569
  - spec/fixtures/authorities/authority_D.yml
@@ -545,7 +574,6 @@ test_files:
545
574
  - spec/fixtures/tgn-response.txt
546
575
  - spec/fixtures/lod_oclc_term_found.rdf.xml
547
576
  - spec/fixtures/assign-fast-noheader.json
548
- - spec/fixtures/lod_agrovoc_query_no_results.json
549
577
  - spec/fixtures/lod_lang_search_enfrde.rdf.xml
550
578
  - spec/fixtures/funders-result.json
551
579
  - spec/fixtures/ulan-response.txt