hydra-collections 2.0.5 → 3.0.0.beta1

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 (40) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.gitmodules +0 -4
  4. data/.rspec +1 -0
  5. data/Gemfile +9 -0
  6. data/README.md +3 -3
  7. data/Rakefile +8 -8
  8. data/{lib → app/controllers/concerns}/hydra/collections/selects_collections.rb +3 -8
  9. data/app/controllers/concerns/hydra/collections_controller_behavior.rb +19 -20
  10. data/app/helpers/collections_search_helper.rb +2 -1
  11. data/app/models/concerns/hydra/collection.rb +80 -16
  12. data/app/views/collections/_search_form.html.erb +0 -16
  13. data/hydra-collections.gemspec +4 -4
  14. data/lib/hydra/collections/accepts_batches.rb +5 -5
  15. data/lib/hydra/collections/collectible.rb +15 -8
  16. data/lib/hydra/collections/solr_document_behavior.rb +0 -15
  17. data/lib/hydra/collections/version.rb +1 -1
  18. data/spec/controllers/catalog_controller_spec.rb +5 -19
  19. data/spec/controllers/collections_controller_spec.rb +125 -154
  20. data/spec/controllers/other_collections_controller_spec.rb +13 -15
  21. data/spec/controllers/selects_collections_spec.rb +39 -48
  22. data/spec/factories.rb +0 -14
  23. data/spec/factories/users.rb +0 -14
  24. data/spec/helpers/collections_helper_spec.rb +14 -16
  25. data/spec/helpers/collections_search_helper_spec.rb +4 -2
  26. data/spec/lib/collectible_spec.rb +7 -7
  27. data/spec/models/collection_spec.rb +40 -42
  28. data/spec/spec_helper.rb +12 -1
  29. data/spec/{support → test_app_templates}/app/models/sample.rb +0 -0
  30. data/spec/{support → test_app_templates}/app/models/solr_document.rb +0 -0
  31. data/spec/{support → test_app_templates}/app/views/catalog/_document_header.html.erb +0 -0
  32. data/spec/{support → test_app_templates}/app/views/catalog/_index_collection.html.erb +0 -0
  33. data/spec/{support → test_app_templates}/app/views/catalog/_sort_and_per_page.html.erb +0 -0
  34. data/spec/{support → test_app_templates}/db/migrate/20111101221803_create_searches.rb +0 -0
  35. data/spec/{support → test_app_templates}/lib/generators/test_app_generator.rb +10 -2
  36. data/spec/{support → test_app_templates}/lib/tasks/rspec.rake +0 -0
  37. data/tasks/hydra-collections-dev.rake +16 -56
  38. metadata +33 -36
  39. data/app/models/datastreams/hydra/collection_rdf_datastream.rb +0 -58
  40. data/spec/factories/.gitkeep +0 -0
data/spec/spec_helper.rb CHANGED
@@ -9,18 +9,29 @@ require 'hydra-collections'
9
9
  FactoryGirl.definition_file_paths = [File.expand_path("../factories", __FILE__)]
10
10
  FactoryGirl.find_definitions
11
11
 
12
+ # HttpLogger.logger = Logger.new(STDOUT)
13
+ # HttpLogger.ignore = [/localhost:8983\/solr/]
14
+ # HttpLogger.colorize = false
15
+ # # Patch for https://github.com/railsware/http_logger/issues/13
16
+ # HttpLogger::HTTP_METHODS_WITH_BODY = Set.new(%w(POST PUT GET PATCH))
17
+
12
18
  module EngineRoutes
13
19
  def self.included(base)
14
20
  base.routes { Hydra::Collections::Engine.routes }
15
21
  end
16
22
  end
17
23
 
24
+ require 'active_fedora/cleaner'
18
25
  RSpec.configure do |config|
19
26
  config.use_transactional_fixtures = true
20
27
  config.include Devise::TestHelpers, :type => :controller
21
- config.before(:each, :type=>"controller") { @routes = Hydra::Collections::Engine.routes }
28
+ config.before(:each, type: "controller") { @routes = Hydra::Collections::Engine.routes }
22
29
  config.include EngineRoutes, :type => :controller
23
30
  config.infer_spec_type_from_file_location!
31
+ # Stub out test stuff.
32
+ config.before(:each) do
33
+ ActiveFedora::Cleaner.clean!
34
+ end
24
35
  end
25
36
 
26
37
  module FactoryGirl
@@ -1,7 +1,14 @@
1
1
  require 'rails/generators'
2
2
 
3
3
  class TestAppGenerator < Rails::Generators::Base
4
- source_root File.expand_path("../../../../support", __FILE__)
4
+ source_root File.expand_path("../../../../test_app_templates", __FILE__)
5
+
6
+ def update_gemfile
7
+ append_to_file "Gemfile" do
8
+ "\n gem 'factory_girl_rails'"
9
+ end
10
+ end
11
+
5
12
 
6
13
  def run_blacklight_generator
7
14
  say_status("warning", "GENERATING BL", :yellow)
@@ -33,7 +40,7 @@ class TestAppGenerator < Rails::Generators::Base
33
40
 
34
41
  def delete_generated_noise
35
42
  remove_file("public/index.html")
36
- remove_file("spec/models/user_spec.rb")
43
+ remove_file("test/factories/users.rb")
37
44
  end
38
45
 
39
46
  def copy_view_overrides
@@ -74,3 +81,4 @@ class TestAppGenerator < Rails::Generators::Base
74
81
  end
75
82
  end
76
83
  end
84
+
@@ -1,11 +1,15 @@
1
1
  require 'rspec/core'
2
2
  require 'rspec/core/rake_task'
3
- APP_ROOT="." # for jettywrapper
4
3
  require 'jettywrapper'
5
- ENV["RAILS_ROOT"] ||= 'spec/internal'
4
+ require 'engine_cart/rake_task'
5
+
6
+ JETTY_ZIP_BASENAME = 'fedora-4/master'
7
+ Jettywrapper.url = "https://github.com/projecthydra/hydra-jetty/archive/#{JETTY_ZIP_BASENAME}.zip"
8
+
9
+ RSpec::Core::RakeTask.new(:spec)
6
10
 
7
11
  desc 'Spin up hydra-jetty and run specs'
8
- task :ci => ['jetty:config'] do
12
+ task ci: ['engine_cart:clean', 'engine_cart:generate', 'jetty:clean'] do
9
13
  puts 'running continuous integration'
10
14
  jetty_params = Jettywrapper.load_config
11
15
  error = Jettywrapper.wrap(jetty_params) do
@@ -14,61 +18,17 @@ task :ci => ['jetty:config'] do
14
18
  raise "test failures: #{error}" if error
15
19
  end
16
20
 
17
- desc "Run specs"
18
- # Note: this is _not_ an RSpec::Core::RakeTask.
19
- # It's a regular rake task that calls the RSpec RakeTask that's defined in spec/support/lib/tasks/rspec.rake
20
- task :spec => [:generate] do |t|
21
- focused_spec = ENV['SPEC'] ? " SPEC=#{File.join(GEM_ROOT, ENV['SPEC'])}" : ''
22
- Bundler.with_clean_env do
23
- within_test_app do
24
- system "rake myspec#{focused_spec}"
25
- abort "Error running hydra-collections" unless $?.success?
26
- end
27
- end
28
- end
21
+ EXTRA_GEMS =<<EOF
22
+ gem 'active-fedora', '9.0.0.beta3'
23
+ gem 'hydra-head', github: 'projecthydra/hydra-head', branch: 'fedora-4'
29
24
 
30
- desc "Create the test rails app"
31
- task :generate do
32
- unless File.exists?('spec/internal/Rakefile')
33
- puts "Generating rails app"
34
- `rails new spec/internal`
35
- puts "Updating gemfile"
25
+ EOF
36
26
 
37
- `echo "gem 'hydra-collections', :path=>'../../../hydra-collections'
38
- gem 'factory_girl_rails'
39
- " >> spec/internal/Gemfile`
40
- puts "Copying generator"
41
- `cp -r spec/support/lib/generators spec/internal/lib`
42
- Bundler.with_clean_env do
43
- within_test_app do
44
- puts "Bundle install"
45
- `bundle install`
46
- puts "running test_app_generator"
47
- system "rails generate test_app"
48
- # These factories are autogenerated and conflict with our factories
49
- system 'rm test/factories/users.rb'
50
- puts "running migrations"
51
- puts `rake db:migrate db:test:prepare`
52
- end
27
+ namespace :engine_cart do
28
+ # we're adding some extra stuff into the gemfile beyond what engine_cart gives us by default
29
+ task :inject_gemfile_extras do
30
+ open(File.expand_path('Gemfile', EngineCart.destination), 'a') do |f|
31
+ f.write EXTRA_GEMS
53
32
  end
54
33
  end
55
- puts "Done generating test app"
56
- end
57
-
58
- desc "Clean out the test rails app"
59
- task :clean do
60
- puts "Removing sample rails app"
61
- `rm -rf spec/internal`
62
- end
63
-
64
- def within_test_app
65
- FileUtils.cd('spec/internal')
66
- yield
67
- FileUtils.cd('../..')
68
- end
69
-
70
- namespace :meme do
71
- desc "configure jetty to generate checksums"
72
- task :config do
73
- end
74
34
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hydra-collections
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.5
4
+ version: 3.0.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carolyn Cole
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-05 00:00:00.000000000 Z
11
+ date: 2014-12-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: blacklight
@@ -30,30 +30,30 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '7.0'
33
+ version: 8.0.0.alpha
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '7.0'
40
+ version: 8.0.0.alpha
41
41
  - !ruby/object:Gem::Dependency
42
- name: bundler
42
+ name: deprecation
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '1.3'
48
- type: :development
47
+ version: '0'
48
+ type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '1.3'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rake
56
+ name: engine_cart
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
@@ -89,6 +89,7 @@ extra_rdoc_files: []
89
89
  files:
90
90
  - ".gitignore"
91
91
  - ".gitmodules"
92
+ - ".rspec"
92
93
  - ".travis.yml"
93
94
  - CONTRIBUTING.md
94
95
  - Changelog.md
@@ -100,13 +101,13 @@ files:
100
101
  - app/assets/javascripts/hydra_collections.js
101
102
  - app/assets/stylesheets/hydra_collections.css.scss
102
103
  - app/controllers/collections_controller.rb
104
+ - app/controllers/concerns/hydra/collections/selects_collections.rb
103
105
  - app/controllers/concerns/hydra/collections_controller_behavior.rb
104
106
  - app/helpers/batch_select_helper.rb
105
107
  - app/helpers/collections_helper.rb
106
108
  - app/helpers/collections_search_helper.rb
107
109
  - app/models/collection.rb
108
110
  - app/models/concerns/hydra/collection.rb
109
- - app/models/datastreams/hydra/collection_rdf_datastream.rb
110
111
  - app/models/solr_document.rb
111
112
  - app/views/batch_select/_add_button.html.erb
112
113
  - app/views/batch_select/_check_all.html.erb
@@ -137,7 +138,6 @@ files:
137
138
  - lib/hydra/collections/accepts_batches.rb
138
139
  - lib/hydra/collections/collectible.rb
139
140
  - lib/hydra/collections/search_service.rb
140
- - lib/hydra/collections/selects_collections.rb
141
141
  - lib/hydra/collections/solr_document_behavior.rb
142
142
  - lib/hydra/collections/version.rb
143
143
  - solr_conf/conf/schema.xml
@@ -149,7 +149,6 @@ files:
149
149
  - spec/controllers/other_collections_controller_spec.rb
150
150
  - spec/controllers/selects_collections_spec.rb
151
151
  - spec/factories.rb
152
- - spec/factories/.gitkeep
153
152
  - spec/factories/users.rb
154
153
  - spec/helpers/collections_helper_spec.rb
155
154
  - spec/helpers/collections_search_helper_spec.rb
@@ -157,17 +156,17 @@ files:
157
156
  - spec/lib/search_service_spec.rb
158
157
  - spec/models/collection_spec.rb
159
158
  - spec/spec_helper.rb
160
- - spec/support/app/models/sample.rb
161
- - spec/support/app/models/solr_document.rb
162
- - spec/support/app/views/catalog/_document_header.html.erb
163
- - spec/support/app/views/catalog/_index_collection.html.erb
164
- - spec/support/app/views/catalog/_sort_and_per_page.html.erb
165
- - spec/support/db/migrate/20111101221803_create_searches.rb
166
- - spec/support/lib/generators/test_app_generator.rb
167
- - spec/support/lib/tasks/rspec.rake
159
+ - spec/test_app_templates/app/models/sample.rb
160
+ - spec/test_app_templates/app/models/solr_document.rb
161
+ - spec/test_app_templates/app/views/catalog/_document_header.html.erb
162
+ - spec/test_app_templates/app/views/catalog/_index_collection.html.erb
163
+ - spec/test_app_templates/app/views/catalog/_sort_and_per_page.html.erb
164
+ - spec/test_app_templates/db/migrate/20111101221803_create_searches.rb
165
+ - spec/test_app_templates/lib/generators/test_app_generator.rb
166
+ - spec/test_app_templates/lib/tasks/rspec.rake
168
167
  - tasks/hydra-collections-dev.rake
169
168
  - tasks/jetty.rake
170
- homepage: https://github.com/psu-stewardship/hydra-collections
169
+ homepage: https://github.com/projecthydra-labs/hydra-collections
171
170
  licenses:
172
171
  - APACHE2
173
172
  metadata: {}
@@ -182,12 +181,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
182
181
  version: '0'
183
182
  required_rubygems_version: !ruby/object:Gem::Requirement
184
183
  requirements:
185
- - - ">="
184
+ - - ">"
186
185
  - !ruby/object:Gem::Version
187
- version: '0'
186
+ version: 1.3.1
188
187
  requirements: []
189
188
  rubyforge_project:
190
- rubygems_version: 2.4.1
189
+ rubygems_version: 2.2.2
191
190
  signing_key:
192
191
  specification_version: 4
193
192
  summary: A rails engine for managing Hydra Collections
@@ -198,7 +197,6 @@ test_files:
198
197
  - spec/controllers/other_collections_controller_spec.rb
199
198
  - spec/controllers/selects_collections_spec.rb
200
199
  - spec/factories.rb
201
- - spec/factories/.gitkeep
202
200
  - spec/factories/users.rb
203
201
  - spec/helpers/collections_helper_spec.rb
204
202
  - spec/helpers/collections_search_helper_spec.rb
@@ -206,12 +204,11 @@ test_files:
206
204
  - spec/lib/search_service_spec.rb
207
205
  - spec/models/collection_spec.rb
208
206
  - spec/spec_helper.rb
209
- - spec/support/app/models/sample.rb
210
- - spec/support/app/models/solr_document.rb
211
- - spec/support/app/views/catalog/_document_header.html.erb
212
- - spec/support/app/views/catalog/_index_collection.html.erb
213
- - spec/support/app/views/catalog/_sort_and_per_page.html.erb
214
- - spec/support/db/migrate/20111101221803_create_searches.rb
215
- - spec/support/lib/generators/test_app_generator.rb
216
- - spec/support/lib/tasks/rspec.rake
217
- has_rdoc:
207
+ - spec/test_app_templates/app/models/sample.rb
208
+ - spec/test_app_templates/app/models/solr_document.rb
209
+ - spec/test_app_templates/app/views/catalog/_document_header.html.erb
210
+ - spec/test_app_templates/app/views/catalog/_index_collection.html.erb
211
+ - spec/test_app_templates/app/views/catalog/_sort_and_per_page.html.erb
212
+ - spec/test_app_templates/db/migrate/20111101221803_create_searches.rb
213
+ - spec/test_app_templates/lib/generators/test_app_generator.rb
214
+ - spec/test_app_templates/lib/tasks/rspec.rake
@@ -1,58 +0,0 @@
1
- module Hydra
2
- class CollectionRdfDatastream < ActiveFedora::NtriplesRDFDatastream
3
- property :part_of, predicate: RDF::DC.isPartOf
4
- property :contributor, predicate: RDF::DC.contributor do |index|
5
- index.as :stored_searchable, :facetable
6
- end
7
- property :creator, predicate: RDF::DC.creator do |index|
8
- index.as :stored_searchable, :facetable
9
- end
10
- property :title, predicate: RDF::DC.title do |index|
11
- index.as :stored_searchable
12
- end
13
- property :description, predicate: RDF::DC.description do |index|
14
- index.type :text
15
- index.as :stored_searchable
16
- end
17
- property :publisher, predicate: RDF::DC.publisher do |index|
18
- index.as :stored_searchable, :facetable
19
- end
20
- property :date_created, predicate: RDF::DC.created do |index|
21
- index.as :stored_searchable
22
- end
23
- property :date_uploaded, predicate: RDF::DC.dateSubmitted do |index|
24
- index.type :date
25
- index.as :stored_sortable
26
- end
27
- property :date_modified, predicate: RDF::DC.modified do |index|
28
- index.type :date
29
- index.as :stored_sortable
30
- end
31
- property :subject, predicate: RDF::DC.subject do |index|
32
- index.as :stored_searchable, :facetable
33
- end
34
- property :language, predicate: RDF::DC.language do |index|
35
- index.as :stored_searchable, :facetable
36
- end
37
- property :rights, predicate: RDF::DC.rights do |index|
38
- index.as :stored_searchable
39
- end
40
- property :resource_type, predicate: RDF::DC.type do |index|
41
- index.as :stored_searchable, :facetable
42
- end
43
- property :identifier, predicate: RDF::DC.identifier do |index|
44
- index.as :stored_searchable
45
- end
46
- property :based_near, predicate: RDF::FOAF.based_near do |index|
47
- index.as :stored_searchable, :facetable
48
- end
49
- property :tag, predicate: RDF::DC.relation do |index|
50
- index.as :stored_searchable, :facetable
51
- end
52
- property :related_url, predicate: RDF::RDFS.seeAlso
53
-
54
- def prefix
55
- ""
56
- end
57
- end
58
- end
File without changes