qa_server 0.1.99

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 (115) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +71 -0
  3. data/Gemfile +55 -0
  4. data/Gemfile.lock +411 -0
  5. data/LICENSE +201 -0
  6. data/README.md +187 -0
  7. data/Rakefile +18 -0
  8. data/app/assets/images/qa_server/LD4L-bg.png +0 -0
  9. data/app/assets/images/qa_server/cornell-reduced-white.svg +160 -0
  10. data/app/assets/images/qa_server/iowa-logo.png +0 -0
  11. data/app/assets/images/qa_server/samvera-fall-font1-1000w-light.png +0 -0
  12. data/app/assets/javascripts/qa_server.js +0 -0
  13. data/app/assets/stylesheets/qa_server/_authorities.scss +0 -0
  14. data/app/assets/stylesheets/qa_server/_check-status.scss +72 -0
  15. data/app/assets/stylesheets/qa_server/_footer.scss +20 -0
  16. data/app/assets/stylesheets/qa_server/_header.scss +51 -0
  17. data/app/assets/stylesheets/qa_server/_home-page.scss +15 -0
  18. data/app/assets/stylesheets/qa_server/_monitor-status.scss +13 -0
  19. data/app/assets/stylesheets/qa_server/_qa_server.scss +36 -0
  20. data/app/assets/stylesheets/qa_server/_styles.scss +27 -0
  21. data/app/assets/stylesheets/qa_server/_usage.scss +0 -0
  22. data/app/controllers/qa_server/authority_list_controller.rb +14 -0
  23. data/app/controllers/qa_server/authority_validation_controller.rb +77 -0
  24. data/app/controllers/qa_server/check_status_controller.rb +38 -0
  25. data/app/controllers/qa_server/homepage_controller.rb +8 -0
  26. data/app/controllers/qa_server/monitor_status_controller.rb +79 -0
  27. data/app/controllers/qa_server/usage_controller.rb +8 -0
  28. data/app/loggers/qa_server/scenario_logger.rb +84 -0
  29. data/app/models/qa_server/authority_scenario.rb +35 -0
  30. data/app/models/qa_server/authority_status.rb +18 -0
  31. data/app/models/qa_server/authority_status_failure.rb +7 -0
  32. data/app/models/qa_server/scenarios.rb +71 -0
  33. data/app/models/qa_server/search_scenario.rb +58 -0
  34. data/app/models/qa_server/term_scenario.rb +50 -0
  35. data/app/presenters/qa_server/authority_list_presenter.rb +22 -0
  36. data/app/presenters/qa_server/check_status_presenter.rb +96 -0
  37. data/app/presenters/qa_server/monitor_status_presenter.rb +108 -0
  38. data/app/services/qa_server/authority_lister_service.rb +31 -0
  39. data/app/services/qa_server/authority_loader_service.rb +38 -0
  40. data/app/services/qa_server/authority_validator_service.rb +41 -0
  41. data/app/services/qa_server/database_migrator.rb +70 -0
  42. data/app/services/qa_server/scenarios_loader_service.rb +57 -0
  43. data/app/validators/qa_server/scenario_validator.rb +134 -0
  44. data/app/validators/qa_server/search_scenario_validator.rb +84 -0
  45. data/app/validators/qa_server/term_scenario_validator.rb +42 -0
  46. data/app/views/layouts/qa_server.html.erb +65 -0
  47. data/app/views/qa_server/authority_list/index.html.erb +27 -0
  48. data/app/views/qa_server/check_status/index.html.erb +104 -0
  49. data/app/views/qa_server/homepage/index.html.erb +10 -0
  50. data/app/views/qa_server/monitor_status/index.html.erb +78 -0
  51. data/app/views/qa_server/usage/index.html.erb +106 -0
  52. data/app/views/shared/_footer.html.erb +24 -0
  53. data/config/locales/qa_server.en.yml +68 -0
  54. data/config/routes.rb +12 -0
  55. data/lib/generators/qa_server/assets_generator.rb +35 -0
  56. data/lib/generators/qa_server/config_generator.rb +31 -0
  57. data/lib/generators/qa_server/install_generator.rb +60 -0
  58. data/lib/generators/qa_server/models_generator.rb +18 -0
  59. data/lib/generators/qa_server/templates/config/authorities/linked_data/agrovoc_direct.json +69 -0
  60. data/lib/generators/qa_server/templates/config/authorities/linked_data/agrovoc_ld4l_cache.json +85 -0
  61. data/lib/generators/qa_server/templates/config/authorities/linked_data/dbpedia_direct.json +36 -0
  62. data/lib/generators/qa_server/templates/config/authorities/linked_data/dbpedia_ld4l_cache.json +83 -0
  63. data/lib/generators/qa_server/templates/config/authorities/linked_data/geonames_direct.json +68 -0
  64. data/lib/generators/qa_server/templates/config/authorities/linked_data/geonames_ld4l_cache.json +102 -0
  65. data/lib/generators/qa_server/templates/config/authorities/linked_data/getty_aat_ld4l_cache.json +109 -0
  66. data/lib/generators/qa_server/templates/config/authorities/linked_data/getty_tgn_ld4l_cache.json +72 -0
  67. data/lib/generators/qa_server/templates/config/authorities/linked_data/getty_ulan_ld4l_cache.json +81 -0
  68. data/lib/generators/qa_server/templates/config/authorities/linked_data/loc_direct.json +47 -0
  69. data/lib/generators/qa_server/templates/config/authorities/linked_data/locgenres_ld4l_cache.json +99 -0
  70. data/lib/generators/qa_server/templates/config/authorities/linked_data/locnames_ld4l_cache.json +89 -0
  71. data/lib/generators/qa_server/templates/config/authorities/linked_data/locsubjects_ld4l_cache.json +82 -0
  72. data/lib/generators/qa_server/templates/config/authorities/linked_data/mesh_ld4l_cache.json +70 -0
  73. data/lib/generators/qa_server/templates/config/authorities/linked_data/nalt_direct.json +32 -0
  74. data/lib/generators/qa_server/templates/config/authorities/linked_data/nalt_ld4l_cache.json +84 -0
  75. data/lib/generators/qa_server/templates/config/authorities/linked_data/oclcfast_direct.json +81 -0
  76. data/lib/generators/qa_server/templates/config/authorities/linked_data/oclcfast_ld4l_cache.json +86 -0
  77. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/agrovoc_direct_validation.yml +9 -0
  78. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/agrovoc_ld4l_cache_validation.yml +9 -0
  79. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/agrovoc_validation.yml +9 -0
  80. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/dbpedia_direct_validation.yml +6 -0
  81. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/dbpedia_ld4l_cache_validation.yml +9 -0
  82. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/geonames_direct_validation.yml +9 -0
  83. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/geonames_ld4l_cache_validation.yml +41 -0
  84. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/getty_aat_ld4l_cache_validation.yml +115 -0
  85. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/getty_tgn_ld4l_cache_validation.yml +9 -0
  86. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/getty_ulan_ld4l_cache_validation.yml +15 -0
  87. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/loc_direct_validation.yml +25 -0
  88. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/loc_validation.yml +22 -0
  89. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/locgenres_ld4l_cache_validation.yml +99 -0
  90. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/locnames_ld4l_cache_validation.yml +27 -0
  91. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/locsubjects_ld4l_cache_validation.yml +27 -0
  92. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/mesh_ld4l_cache_validation.yml +9 -0
  93. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/nalt_direct_validation.yml +6 -0
  94. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/nalt_ld4l_cache_validation.yml +9 -0
  95. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/oclc_fast_validation.yml +58 -0
  96. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/oclcfast_direct_validation.yml +58 -0
  97. data/lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/oclcfast_ld4l_cache_validation.yml +30 -0
  98. data/lib/generators/qa_server/templates/config/locales/qa_server.en.yml +9 -0
  99. data/lib/generators/qa_server/templates/db/migrate/20180313045551_create_cron_authority_status.rb.erb +9 -0
  100. data/lib/generators/qa_server/templates/db/migrate/20180508045549_rename_cron_authority_status_to_authority_status.rb.erb +5 -0
  101. data/lib/generators/qa_server/templates/db/migrate/20180508045551_create_authority_status_failure.rb.erb +15 -0
  102. data/lib/generators/qa_server/templates/qa_server.scss +5 -0
  103. data/lib/qa_server/engine.rb +19 -0
  104. data/lib/qa_server/version.rb +3 -0
  105. data/lib/qa_server.rb +6 -0
  106. data/lib/tasks/install.rake +8 -0
  107. data/lib/tasks/qa_server_tasks.rake +4 -0
  108. data/qa_server.gemspec +39 -0
  109. data/spec/.gitignore +1 -0
  110. data/spec/rails_helper.rb +2 -0
  111. data/spec/spec_helper.rb +283 -0
  112. data/spec/test_app_templates/Gemfile.extra +5 -0
  113. data/spec/test_app_templates/lib/generators/test_app_generator.rb +15 -0
  114. data/tasks/qa_server_dev.rake +16 -0
  115. metadata +275 -0
@@ -0,0 +1,283 @@
1
+ ENV["RAILS_ENV"] ||= 'test'
2
+ require "bundler/setup"
3
+
4
+ def coverage_needed?
5
+ ENV['COVERAGE'] || ENV['TRAVIS']
6
+ end
7
+
8
+ if coverage_needed?
9
+ require 'simplecov'
10
+ require 'coveralls'
11
+ SimpleCov.root(File.expand_path('../..', __FILE__))
12
+ SimpleCov.formatter = Coveralls::SimpleCov::Formatter
13
+ SimpleCov.start('rails') do
14
+ add_filter '/.internal_test_app'
15
+ add_filter '/lib/generators'
16
+ add_filter '/spec'
17
+ add_filter '/tasks'
18
+ add_filter '/lib/qa_server/version.rb'
19
+ add_filter '/lib/qa_server/engine.rb'
20
+ end
21
+ SimpleCov.command_name 'spec'
22
+ end
23
+
24
+ require 'factory_bot'
25
+ require 'engine_cart'
26
+ EngineCart.load_application!
27
+
28
+ # require 'devise'
29
+ # require 'devise/version'
30
+ # require 'mida'
31
+ require 'rails-controller-testing'
32
+ require 'rspec/rails'
33
+ require 'rspec/its'
34
+ require 'rspec/matchers'
35
+ require 'rspec/active_model/mocks'
36
+ require 'capybara/rspec'
37
+ require 'capybara/rails'
38
+ require 'selenium-webdriver'
39
+ # require 'equivalent-xml'
40
+ # require 'equivalent-xml/rspec_matchers'
41
+ # require 'database_cleaner' # TODO: Explore whether to include database cleaner
42
+
43
+ unless ENV['SKIP_MALEFICENT']
44
+ # See https://github.com/jeremyf/capybara-maleficent
45
+ # Wrap Capybara matchers with sleep intervals to reduce fragility of specs.
46
+ require 'capybara/maleficent/spindle'
47
+
48
+ Capybara::Maleficent.config do |c|
49
+ # Quieting down maleficent's logging
50
+ logger = Logger.new(STDOUT)
51
+ logger.level = Logger::INFO
52
+ c.logger = logger
53
+ end
54
+ end
55
+
56
+ # Require supporting ruby files from spec/support/ and subdirectories. Note: engine, not Rails.root context.
57
+ Dir[File.join(File.dirname(__FILE__), "support/**/*.rb")].each { |f| require f }
58
+
59
+ require 'webmock/rspec'
60
+ WebMock.disable_net_connect!(allow_localhost: true)
61
+
62
+ require 'i18n/debug' if ENV['I18N_DEBUG']
63
+ require 'byebug' unless ENV['TRAVIS']
64
+
65
+ # @note In January 2018, TravisCI disabled Chrome sandboxing in its Linux
66
+ # container build environments to mitigate Meltdown/Spectre
67
+ # vulnerabilities, at which point Qa Server could no longer use the
68
+ # Capybara-provided :selenium_chrome_headless driver (which does not
69
+ # include the `--no-sandbox` argument).
70
+ Capybara.register_driver :selenium_chrome_headless_sandboxless do |app|
71
+ browser_options = ::Selenium::WebDriver::Chrome::Options.new
72
+ browser_options.args << '--headless'
73
+ browser_options.args << '--disable-gpu'
74
+ browser_options.args << '--no-sandbox'
75
+ Capybara::Selenium::Driver.new(app, browser: :chrome, options: browser_options)
76
+ end
77
+
78
+ Capybara.default_driver = :rack_test # This is a faster driver
79
+ Capybara.javascript_driver = :selenium_chrome_headless_sandboxless # This is slower
80
+
81
+ # ActiveJob::Base.queue_adapter = :test
82
+
83
+ # require 'http_logger'
84
+ # HttpLogger.logger = Logger.new(STDOUT)
85
+ # HttpLogger.ignore = [/localhost:8983\/solr/]
86
+ # HttpLogger.colorize = false
87
+
88
+ # if defined?(ClamAV)
89
+ # ClamAV.instance.loaddb
90
+ # else
91
+ # class ClamAV
92
+ # include Singleton
93
+ # def scanfile(_f)
94
+ # 0
95
+ # end
96
+ #
97
+ # def loaddb
98
+ # nil
99
+ # end
100
+ # end
101
+ # end
102
+
103
+ # class JsonStrategy
104
+ # def initialize
105
+ # @strategy = FactoryBot.strategy_by_name(:create).new
106
+ # end
107
+ #
108
+ # delegate :association, to: :@strategy
109
+ #
110
+ # def result(evaluation)
111
+ # @strategy.result(evaluation).to_json
112
+ # end
113
+ # end
114
+ #
115
+ # FactoryBot.register_strategy(:json, JsonStrategy)
116
+ # FactoryBot.definition_file_paths = [File.expand_path("../factories", __FILE__)]
117
+ # FactoryBot.find_definitions
118
+
119
+ module EngineRoutes
120
+ def self.included(base)
121
+ base.routes { QaServer::Engine.routes }
122
+ end
123
+
124
+ def main_app
125
+ Rails.application.class.routes.url_helpers
126
+ end
127
+ end
128
+
129
+ # require 'shoulda/matchers'
130
+ # require 'shoulda/callback/matchers'
131
+ # Shoulda::Matchers.configure do |config|
132
+ # config.integrate do |with|
133
+ # with.test_framework :rspec
134
+ # with.library :rails
135
+ # end
136
+ # end
137
+
138
+ # require 'active_fedora/cleaner'
139
+ # RSpec.configure do |config|
140
+ # config.disable_monkey_patching!
141
+ # config.include Shoulda::Matchers::ActiveRecord, type: :model
142
+ # config.include Shoulda::Matchers::ActiveModel, type: :form
143
+ # config.include Shoulda::Callback::Matchers::ActiveModel
144
+ # config.full_backtrace = true if ENV['TRAVIS']
145
+ # config.expect_with :rspec do |c|
146
+ # c.syntax = :expect
147
+ # end
148
+ #
149
+ # # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
150
+ # config.fixture_path = File.expand_path("../fixtures", __FILE__)
151
+ #
152
+ # config.use_transactional_fixtures = false
153
+ #
154
+ # config.before :suite do
155
+ # DatabaseCleaner.clean_with(:truncation)
156
+ # # Noid minting causes extra LDP requests which slow the test suite.
157
+ # QaServer.config.enable_noids = false
158
+ # end
159
+ #
160
+ # config.before do |example|
161
+ # if example.metadata[:type] == :feature && Capybara.current_driver != :rack_test
162
+ # DatabaseCleaner.strategy = :truncation
163
+ # else
164
+ # DatabaseCleaner.strategy = :transaction
165
+ # DatabaseCleaner.start
166
+ # end
167
+ #
168
+ # # using :workflow is preferable to :clean_repo, use the former if possible
169
+ # # It's important that this comes after DatabaseCleaner.start
170
+ # ensure_deposit_available_for(user) if example.metadata[:workflow]
171
+ # if example.metadata[:clean_repo]
172
+ # ActiveFedora::Cleaner.clean!
173
+ # # The JS is executed in a different thread, so that other thread
174
+ # # may think the root path has already been created:
175
+ # ActiveFedora.fedora.connection.send(:init_base_path) if example.metadata[:js]
176
+ # end
177
+ # QaServer.config.nested_relationship_reindexer = if example.metadata[:with_nested_reindexing]
178
+ # # Use the default relationship reindexer (and the cascading reindexing of child documents)
179
+ # QaServer.config.default_nested_relationship_reindexer
180
+ # else
181
+ # # Don't use the nested relationship reindexer. This slows everything down quite a bit.
182
+ # ->(id:, extent:) {}
183
+ # end
184
+ # end
185
+
186
+ # config.include(ControllerLevelHelpers, type: :view)
187
+ # config.before(:each, type: :view) { initialize_controller_helpers(view) }
188
+ #
189
+ # config.before(:all, type: :feature) do
190
+ # # Assets take a long time to compile. This causes two problems:
191
+ # # 1) the profile will show the first feature test taking much longer than it
192
+ # # normally would.
193
+ # # 2) The first feature test will trigger rack-timeout
194
+ # #
195
+ # # Precompile the assets to prevent these issues.
196
+ # visit "/assets/application.css"
197
+ # visit "/assets/application.js"
198
+ # end
199
+ #
200
+ # config.after do
201
+ # DatabaseCleaner.clean
202
+ # end
203
+ #
204
+ # # If true, the base class of anonymous controllers will be inferred
205
+ # # automatically. This will be the default behavior in future versions of
206
+ # # rspec-rails.
207
+ # config.infer_base_class_for_anonymous_controllers = false
208
+ #
209
+ # config.include Shoulda::Matchers::Independent
210
+ #
211
+ # if Devise::VERSION >= '4.2'
212
+ # config.include Devise::Test::ControllerHelpers, type: :controller
213
+ # else
214
+ # config.include Devise::TestHelpers, type: :controller
215
+ # end
216
+ #
217
+ # config.include EngineRoutes, type: :controller
218
+ # config.include Warden::Test::Helpers, type: :request
219
+ # config.include Warden::Test::Helpers, type: :feature
220
+ # config.after(:each, type: :feature) do
221
+ # Warden.test_reset!
222
+ # Capybara.reset_sessions!
223
+ # page.driver.reset!
224
+ # end
225
+ #
226
+ # config.include Capybara::RSpecMatchers, type: :input
227
+ # config.include InputSupport, type: :input
228
+ # config.include FactoryBot::Syntax::Methods
229
+ # config.include OptionalExample
230
+ #
231
+ # config.infer_spec_type_from_file_location!
232
+ #
233
+ # config.expect_with :rspec do |expectations|
234
+ # expectations.include_chain_clauses_in_custom_matcher_descriptions = true
235
+ # end
236
+ #
237
+ # config.formatter = 'LoggingFormatter'
238
+ # config.default_formatter = 'doc' if config.files_to_run.one?
239
+ #
240
+ # config.order = :random
241
+ # Kernel.srand config.seed
242
+ #
243
+ # config.shared_context_metadata_behavior = :apply_to_host_groups
244
+ #
245
+ # config.filter_run_when_matching :focus
246
+ #
247
+ # config.example_status_persistence_file_path = 'spec/examples.txt'
248
+ #
249
+ # config.profile_examples = 10
250
+ #
251
+ # # Use this example metadata when you want to perform jobs inline during testing.
252
+ # #
253
+ # # describe '#my_method`, :perform_enqueued do
254
+ # # ...
255
+ # # end
256
+ # #
257
+ # # If you pass an `Array` of job classes, they will be treated as the filter list.
258
+ # #
259
+ # # describe '#my_method`, perform_enqueued: [MyJobClass] do
260
+ # # ...
261
+ # # end
262
+ # #
263
+ # # Limit to specific job classes with:
264
+ # #
265
+ # # ActiveJob::Base.queue_adapter.filter = [JobClass]
266
+ # #
267
+ # config.before(:example, :perform_enqueued) do |example|
268
+ # ActiveJob::Base.queue_adapter.filter =
269
+ # example.metadata[:perform_enqueued].try(:to_a)
270
+ #
271
+ # ActiveJob::Base.queue_adapter.perform_enqueued_jobs = true
272
+ # ActiveJob::Base.queue_adapter.perform_enqueued_at_jobs = true
273
+ # end
274
+ #
275
+ # config.after(:example, :perform_enqueued) do
276
+ # ActiveJob::Base.queue_adapter.filter = nil
277
+ # ActiveJob::Base.queue_adapter.enqueued_jobs = []
278
+ # ActiveJob::Base.queue_adapter.performed_jobs = []
279
+ #
280
+ # ActiveJob::Base.queue_adapter.perform_enqueued_jobs = false
281
+ # ActiveJob::Base.queue_adapter.perform_enqueued_at_jobs = false
282
+ # end
283
+ end
@@ -0,0 +1,5 @@
1
+ # Use this file to reference specific commits of gems.
2
+
3
+ group :development do
4
+ gem 'better_errors'
5
+ end
@@ -0,0 +1,15 @@
1
+ require 'rails/generators'
2
+
3
+ class TestAppGenerator < Rails::Generators::Base
4
+ # Generator is executed from /path/to/qa_server/.internal_test_app/lib/generators/test_app_generator/
5
+ # so the following path gets us to /path/to/qa_server/spec/test_app_templates/
6
+ source_root File.expand_path('../../../../spec/test_app_templates/', __FILE__)
7
+
8
+ def install_engine
9
+ generate 'qa_server:install', '-f'
10
+ end
11
+
12
+ def banner
13
+ say_status("info", "ADDING OVERRIDES FOR TEST ENVIRONMENT", :blue)
14
+ end
15
+ end
@@ -0,0 +1,16 @@
1
+ require 'rspec/core/rake_task'
2
+ require 'engine_cart/rake_task'
3
+ require 'rubocop/rake_task'
4
+
5
+ desc 'Run style checker'
6
+ RuboCop::RakeTask.new(:rubocop) do |task|
7
+ task.fail_on_error = true
8
+ end
9
+
10
+ RSpec::Core::RakeTask.new(:spec)
11
+
12
+ desc 'Generate the engine_cart and spin up test servers and run specs'
13
+ task ci: ['rubocop', 'engine_cart:generate'] do
14
+ puts 'running continuous integration'
15
+ Rake::Task['spec_with_app_load'].invoke
16
+ end
metadata ADDED
@@ -0,0 +1,275 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: qa_server
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.99
5
+ platform: ruby
6
+ authors:
7
+ - E. Lynette Rayle
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2018-08-27 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 5.1.6
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 5.1.6
27
+ - !ruby/object:Gem::Dependency
28
+ name: qa
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: linkeddata
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: bixby
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 1.0.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 1.0.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: engine_cart
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '2.0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '2.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec-activemodel-mocks
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '1.0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '1.0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec-its
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '1.1'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '1.1'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rspec-rails
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '3.1'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '3.1'
125
+ description: A rails engine with questioning authority gem installed to serve as an
126
+ authority search server with normalized results.
127
+ email:
128
+ - elr37@cornell.edu
129
+ executables: []
130
+ extensions: []
131
+ extra_rdoc_files: []
132
+ files:
133
+ - ".gitignore"
134
+ - Gemfile
135
+ - Gemfile.lock
136
+ - LICENSE
137
+ - README.md
138
+ - Rakefile
139
+ - app/assets/images/qa_server/LD4L-bg.png
140
+ - app/assets/images/qa_server/cornell-reduced-white.svg
141
+ - app/assets/images/qa_server/iowa-logo.png
142
+ - app/assets/images/qa_server/samvera-fall-font1-1000w-light.png
143
+ - app/assets/javascripts/qa_server.js
144
+ - app/assets/stylesheets/qa_server/_authorities.scss
145
+ - app/assets/stylesheets/qa_server/_check-status.scss
146
+ - app/assets/stylesheets/qa_server/_footer.scss
147
+ - app/assets/stylesheets/qa_server/_header.scss
148
+ - app/assets/stylesheets/qa_server/_home-page.scss
149
+ - app/assets/stylesheets/qa_server/_monitor-status.scss
150
+ - app/assets/stylesheets/qa_server/_qa_server.scss
151
+ - app/assets/stylesheets/qa_server/_styles.scss
152
+ - app/assets/stylesheets/qa_server/_usage.scss
153
+ - app/controllers/qa_server/authority_list_controller.rb
154
+ - app/controllers/qa_server/authority_validation_controller.rb
155
+ - app/controllers/qa_server/check_status_controller.rb
156
+ - app/controllers/qa_server/homepage_controller.rb
157
+ - app/controllers/qa_server/monitor_status_controller.rb
158
+ - app/controllers/qa_server/usage_controller.rb
159
+ - app/loggers/qa_server/scenario_logger.rb
160
+ - app/models/qa_server/authority_scenario.rb
161
+ - app/models/qa_server/authority_status.rb
162
+ - app/models/qa_server/authority_status_failure.rb
163
+ - app/models/qa_server/scenarios.rb
164
+ - app/models/qa_server/search_scenario.rb
165
+ - app/models/qa_server/term_scenario.rb
166
+ - app/presenters/qa_server/authority_list_presenter.rb
167
+ - app/presenters/qa_server/check_status_presenter.rb
168
+ - app/presenters/qa_server/monitor_status_presenter.rb
169
+ - app/services/qa_server/authority_lister_service.rb
170
+ - app/services/qa_server/authority_loader_service.rb
171
+ - app/services/qa_server/authority_validator_service.rb
172
+ - app/services/qa_server/database_migrator.rb
173
+ - app/services/qa_server/scenarios_loader_service.rb
174
+ - app/validators/qa_server/scenario_validator.rb
175
+ - app/validators/qa_server/search_scenario_validator.rb
176
+ - app/validators/qa_server/term_scenario_validator.rb
177
+ - app/views/layouts/qa_server.html.erb
178
+ - app/views/qa_server/authority_list/index.html.erb
179
+ - app/views/qa_server/check_status/index.html.erb
180
+ - app/views/qa_server/homepage/index.html.erb
181
+ - app/views/qa_server/monitor_status/index.html.erb
182
+ - app/views/qa_server/usage/index.html.erb
183
+ - app/views/shared/_footer.html.erb
184
+ - config/locales/qa_server.en.yml
185
+ - config/routes.rb
186
+ - lib/generators/qa_server/assets_generator.rb
187
+ - lib/generators/qa_server/config_generator.rb
188
+ - lib/generators/qa_server/install_generator.rb
189
+ - lib/generators/qa_server/models_generator.rb
190
+ - lib/generators/qa_server/templates/config/authorities/linked_data/agrovoc_direct.json
191
+ - lib/generators/qa_server/templates/config/authorities/linked_data/agrovoc_ld4l_cache.json
192
+ - lib/generators/qa_server/templates/config/authorities/linked_data/dbpedia_direct.json
193
+ - lib/generators/qa_server/templates/config/authorities/linked_data/dbpedia_ld4l_cache.json
194
+ - lib/generators/qa_server/templates/config/authorities/linked_data/geonames_direct.json
195
+ - lib/generators/qa_server/templates/config/authorities/linked_data/geonames_ld4l_cache.json
196
+ - lib/generators/qa_server/templates/config/authorities/linked_data/getty_aat_ld4l_cache.json
197
+ - lib/generators/qa_server/templates/config/authorities/linked_data/getty_tgn_ld4l_cache.json
198
+ - lib/generators/qa_server/templates/config/authorities/linked_data/getty_ulan_ld4l_cache.json
199
+ - lib/generators/qa_server/templates/config/authorities/linked_data/loc_direct.json
200
+ - lib/generators/qa_server/templates/config/authorities/linked_data/locgenres_ld4l_cache.json
201
+ - lib/generators/qa_server/templates/config/authorities/linked_data/locnames_ld4l_cache.json
202
+ - lib/generators/qa_server/templates/config/authorities/linked_data/locsubjects_ld4l_cache.json
203
+ - lib/generators/qa_server/templates/config/authorities/linked_data/mesh_ld4l_cache.json
204
+ - lib/generators/qa_server/templates/config/authorities/linked_data/nalt_direct.json
205
+ - lib/generators/qa_server/templates/config/authorities/linked_data/nalt_ld4l_cache.json
206
+ - lib/generators/qa_server/templates/config/authorities/linked_data/oclcfast_direct.json
207
+ - lib/generators/qa_server/templates/config/authorities/linked_data/oclcfast_ld4l_cache.json
208
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/agrovoc_direct_validation.yml
209
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/agrovoc_ld4l_cache_validation.yml
210
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/agrovoc_validation.yml
211
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/dbpedia_direct_validation.yml
212
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/dbpedia_ld4l_cache_validation.yml
213
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/geonames_direct_validation.yml
214
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/geonames_ld4l_cache_validation.yml
215
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/getty_aat_ld4l_cache_validation.yml
216
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/getty_tgn_ld4l_cache_validation.yml
217
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/getty_ulan_ld4l_cache_validation.yml
218
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/loc_direct_validation.yml
219
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/loc_validation.yml
220
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/locgenres_ld4l_cache_validation.yml
221
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/locnames_ld4l_cache_validation.yml
222
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/locsubjects_ld4l_cache_validation.yml
223
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/mesh_ld4l_cache_validation.yml
224
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/nalt_direct_validation.yml
225
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/nalt_ld4l_cache_validation.yml
226
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/oclc_fast_validation.yml
227
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/oclcfast_direct_validation.yml
228
+ - lib/generators/qa_server/templates/config/authorities/linked_data/scenarios/oclcfast_ld4l_cache_validation.yml
229
+ - lib/generators/qa_server/templates/config/locales/qa_server.en.yml
230
+ - lib/generators/qa_server/templates/db/migrate/20180313045551_create_cron_authority_status.rb.erb
231
+ - lib/generators/qa_server/templates/db/migrate/20180508045549_rename_cron_authority_status_to_authority_status.rb.erb
232
+ - lib/generators/qa_server/templates/db/migrate/20180508045551_create_authority_status_failure.rb.erb
233
+ - lib/generators/qa_server/templates/qa_server.scss
234
+ - lib/qa_server.rb
235
+ - lib/qa_server/engine.rb
236
+ - lib/qa_server/version.rb
237
+ - lib/tasks/install.rake
238
+ - lib/tasks/qa_server_tasks.rake
239
+ - qa_server.gemspec
240
+ - spec/.gitignore
241
+ - spec/rails_helper.rb
242
+ - spec/spec_helper.rb
243
+ - spec/test_app_templates/Gemfile.extra
244
+ - spec/test_app_templates/lib/generators/test_app_generator.rb
245
+ - tasks/qa_server_dev.rake
246
+ homepage: http://github.com/LD4P/qa_server
247
+ licenses:
248
+ - Apache-2.0
249
+ metadata: {}
250
+ post_install_message:
251
+ rdoc_options: []
252
+ require_paths:
253
+ - lib
254
+ required_ruby_version: !ruby/object:Gem::Requirement
255
+ requirements:
256
+ - - ">="
257
+ - !ruby/object:Gem::Version
258
+ version: '0'
259
+ required_rubygems_version: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - ">="
262
+ - !ruby/object:Gem::Version
263
+ version: '0'
264
+ requirements: []
265
+ rubyforge_project:
266
+ rubygems_version: 2.6.14
267
+ signing_key:
268
+ specification_version: 4
269
+ summary: Authority Lookup Server
270
+ test_files:
271
+ - spec/.gitignore
272
+ - spec/rails_helper.rb
273
+ - spec/spec_helper.rb
274
+ - spec/test_app_templates/Gemfile.extra
275
+ - spec/test_app_templates/lib/generators/test_app_generator.rb