valkyrie_active_fedora 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +8 -1
  3. data/.travis.yml +5 -9
  4. data/Gemfile +4 -6
  5. data/lib/tasks/valkyrie_active_fedora_dev.rake +1 -1
  6. data/lib/valkyrie_active_fedora.rb +1 -1
  7. data/lib/valkyrie_active_fedora/base.rb +13 -19
  8. data/lib/valkyrie_active_fedora/rake_support.rb +0 -3
  9. data/lib/valkyrie_active_fedora/resource_factory.rb +61 -0
  10. data/lib/valkyrie_active_fedora/version.rb +1 -2
  11. data/spec/spec_helper.rb +1 -1
  12. data/spec/unit/base_spec.rb +8 -6
  13. data/spec/unit/resource_factory_spec.rb +64 -0
  14. data/valkyrie_active_fedora.gemspec +2 -4
  15. metadata +18 -62
  16. data/lib/generators/valkyrie_active_fedora/config/USAGE +0 -9
  17. data/lib/generators/valkyrie_active_fedora/config/config_generator.rb +0 -10
  18. data/lib/generators/valkyrie_active_fedora/config/fedora/fedora_generator.rb +0 -16
  19. data/lib/generators/valkyrie_active_fedora/config/fedora/templates/.fcrepo_wrapper.yml +0 -4
  20. data/lib/generators/valkyrie_active_fedora/config/fedora/templates/fcrepo_wrapper_test.yml +0 -4
  21. data/lib/generators/valkyrie_active_fedora/config/fedora/templates/fedora.yml +0 -15
  22. data/lib/generators/valkyrie_active_fedora/config/solr/solr_generator.rb +0 -19
  23. data/lib/generators/valkyrie_active_fedora/config/solr/templates/.solr_wrapper.yml +0 -8
  24. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr.yml +0 -7
  25. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/_rest_managed.json +0 -3
  26. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/admin-extra.html +0 -31
  27. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/elevate.xml +0 -36
  28. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/mapping-ISOLatin1Accent.txt +0 -246
  29. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/protwords.txt +0 -21
  30. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/schema.xml +0 -379
  31. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/scripts.conf +0 -24
  32. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/solrconfig.xml +0 -325
  33. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/spellings.txt +0 -2
  34. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/stopwords.txt +0 -58
  35. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/stopwords_en.txt +0 -58
  36. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/synonyms.txt +0 -31
  37. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/xslt/example.xsl +0 -132
  38. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/xslt/example_atom.xsl +0 -67
  39. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/xslt/example_rss.xsl +0 -66
  40. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr/config/xslt/luke.xsl +0 -337
  41. data/lib/generators/valkyrie_active_fedora/config/solr/templates/solr_wrapper_test.yml +0 -8
  42. data/lib/generators/valkyrie_active_fedora/model/USAGE +0 -11
  43. data/lib/generators/valkyrie_active_fedora/model/model_generator.rb +0 -31
  44. data/lib/generators/valkyrie_active_fedora/model/templates/datastream.rb.erb +0 -32
  45. data/lib/generators/valkyrie_active_fedora/model/templates/datastream_spec.rb.erb +0 -13
  46. data/lib/generators/valkyrie_active_fedora/model/templates/model.rb.erb +0 -46
  47. data/lib/generators/valkyrie_active_fedora/model/templates/model_spec.rb.erb +0 -38
@@ -1,8 +0,0 @@
1
- #config/solr_wrapper_test.yml
2
- # version: 6.1.0
3
- port: 8985
4
- instance_dir: tmp/solr-test
5
- collection:
6
- persist: false
7
- dir: solr/config
8
- name: hydra-test
@@ -1,11 +0,0 @@
1
- Description:
2
- Generate a class that inherits from ActiveFedora::Base
3
-
4
- Example:
5
- rails generate valkyrie_active_fedora:model Journal
6
-
7
- This will create:
8
- app/models/journal.rb
9
- app/models/datastreams/journal_metadata.rb
10
- spec/models/journal_spec.rb
11
- spec/models/datastreams/journal_metadata_spec.rb
@@ -1,31 +0,0 @@
1
- require 'rails/generators'
2
-
3
- module ActiveFedora
4
- class ModelGenerator < Rails::Generators::NamedBase
5
- source_root ::File.expand_path('../templates', __FILE__)
6
- check_class_collision
7
-
8
- class_option :directory, type: :string, default: 'models', desc: "Which directory to generate? (i.e. app/DIRECTORY)"
9
- class_option :datastream_directory, type: :string, default: 'models/datastreams', desc: "Which datastream directory to generate? (i.e. models/datastreams)"
10
- class_option :has_subresource, type: :string, default: nil, desc: "Name a file to attach"
11
- class_option :datastream, type: :string, default: nil, desc: "Name a metadata datastream to create"
12
-
13
- def install
14
- template('model.rb.erb', ::File.join('app', directory, "#{file_name}.rb"))
15
- template('model_spec.rb.erb', ::File.join('spec', directory, "#{file_name}_spec.rb"))
16
- return unless options[:datastream]
17
- template('datastream.rb.erb', ::File.join('app', datastream_directory, "#{file_name}_metadata.rb"))
18
- template('datastream_spec.rb.erb', ::File.join('spec', datastream_directory, "#{file_name}_metadata_spec.rb"))
19
- end
20
-
21
- protected
22
-
23
- def directory
24
- options[:directory]
25
- end
26
-
27
- def datastream_directory
28
- options[:datastream_directory]
29
- end
30
- end
31
- end
@@ -1,32 +0,0 @@
1
- # Generated via
2
- # `rails generate valkyrie_active_fedora:model <%= class_name %>`
3
- class <%= class_name %>Metadata < ValkyrieActiveFedora::OmDatastream
4
-
5
- # Define a terminology for parsing this XML document
6
- # See: https://github.com/samvera/om/wiki/Tame-your-XML-with-OM
7
- #
8
- # set_terminology do |t|
9
- # t.root(path: "fields")
10
- # t.title
11
- # t.author
12
- # end
13
-
14
-
15
- # Describe what an empty document looks like
16
- #
17
- # def self.xml_template
18
- # Nokogiri::XML.parse("<fields/>")
19
- # end
20
- #
21
-
22
-
23
- # "If you need to add additional attributes to the SOLR document, define the
24
- # #to_solr method and make sure to use super"
25
- #
26
- # def to_solr(solr_document={}, options={})
27
- # super(solr_document, options)
28
- # solr_document["my_attribute_s"] = my_attribute
29
- # return solr_document
30
- # end
31
-
32
- end
@@ -1,13 +0,0 @@
1
- # Generated via
2
- # `rails generate valkyrie_active_fedora:model <%= class_name %>`
3
- require 'rails_helper'
4
-
5
- describe <%= class_name %>Metadata do
6
- it 'should have a title' do
7
- pending "Create a terminology for <%= class_name %>Metadata, then enable this test"
8
- subject.title = 'War and Peace'
9
- expect(subject.title).to eq ['War and Peace']
10
- end
11
-
12
- end
13
-
@@ -1,46 +0,0 @@
1
- # Generated via
2
- # `rails generate valkyrie_active_fedora:model <%= class_name %>`
3
- class <%= class_name %> < ValkyrieActiveFedora::Base
4
- <% if options['datastream'] %>
5
- has_subresource :descMetadata, class_name: "<%= options['datastream'] %>"
6
- <% else %>
7
- # Define some properties to store:
8
- #
9
- property :title, predicate: ::RDF::Vocab::DC.title do |index|
10
- index.as :stored_searchable, :facetable
11
- end
12
- property :creator, predicate: ::RDF::Vocab::DC.creator do |index|
13
- index.as :stored_searchable, :facetable
14
- end
15
- property :contributor, predicate: ::RDF::Vocab::DC.contributor do |index|
16
- index.as :stored_searchable, :facetable
17
- end
18
- property :description, predicate: ::RDF::Vocab::DC.description do |index|
19
- index.as :stored_searchable
20
- end
21
- <%- end -%>
22
- <% if options['has_subresource'] %>
23
- has_subresource :<%= options['has_subresource'] %>"
24
- <% else %>
25
- # Uncomment the following lines to add an #attachment method that is a file
26
- #
27
- # has_subresource "attachment"
28
- <% end %>
29
- #
30
- # If you need to add additional attributes to the SOLR document, extend the default indexer:
31
- #
32
- # def indexer
33
- # MyApp::IndexingService
34
- # end
35
- #
36
- # This can go into app/services/my_app/indexing_service.rb
37
- # module MyApp
38
- # class IndexingService < ActiveFedora::IndexingService
39
- # def generate_solr_document
40
- # super.tap do |solr_doc|
41
- # solr_doc["my_attribute_s"] = object.my_attribute
42
- # end
43
- # end
44
- # end
45
- # end
46
- end
@@ -1,38 +0,0 @@
1
- # Generated via
2
- # `rails generate valkyrie_active_fedora:model <%= class_name %>`
3
- require 'rails_helper'
4
- require 'valkyrie_active_fedora/test_support'
5
-
6
- describe <%= class_name %> do
7
- it_behaves_like 'An ActiveModel'
8
- include ActiveFedora::TestSupport
9
- subject { <%= class_name %>.new }
10
-
11
- describe "when persisted to fedora" do
12
- before { subject.save! }
13
- after { subject.destroy }
14
- it 'should exist' do
15
- expect(<%= class_name %>.exists?(subject.id)).to be true
16
- end
17
- end
18
-
19
- <% if options['datastream'] %>
20
- it 'should have a descMetadata datastream' do
21
- expect(subject.descMetadata).to be_kind_of <%= options['descMetadata'] ? options['descMetadata'] : "#{class_name}Metadata" %>
22
- end
23
- <% else %>
24
- it 'should have a title' do
25
- subject.title = ['War and Peace']
26
- expect(subject.title).to eq ['War and Peace']
27
- end
28
-
29
- describe "#to_solr" do
30
- subject { <%= class_name %>.new(title: ['War and Peace']).to_solr }
31
-
32
- it 'should have a title' do
33
- expect(subject['title_tesim']).to eq ['War and Peace']
34
- end
35
- end
36
- <% end %>
37
-
38
- end