active-fedora 5.7.1 → 6.0.0.pre1

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 (65) hide show
  1. data/.gitmodules +1 -1
  2. data/Gemfile +2 -1
  3. data/History.txt +0 -14
  4. data/Rakefile +1 -2
  5. data/active-fedora.gemspec +2 -2
  6. data/lib/active_fedora.rb +1 -16
  7. data/lib/active_fedora/associations.rb +8 -11
  8. data/lib/active_fedora/associations/association_collection.rb +2 -4
  9. data/lib/active_fedora/associations/has_and_belongs_to_many_association.rb +3 -12
  10. data/lib/active_fedora/associations/has_many_association.rb +0 -4
  11. data/lib/active_fedora/base.rb +6 -6
  12. data/lib/active_fedora/config.rb +0 -7
  13. data/lib/active_fedora/datastream.rb +0 -37
  14. data/lib/active_fedora/datastream_collections.rb +0 -10
  15. data/lib/active_fedora/datastreams.rb +0 -17
  16. data/lib/active_fedora/digital_object.rb +1 -1
  17. data/lib/active_fedora/file_configurator.rb +0 -22
  18. data/lib/active_fedora/fixture_loader.rb +1 -1
  19. data/lib/active_fedora/nokogiri_datastream.rb +9 -51
  20. data/lib/active_fedora/qualified_dublin_core_datastream.rb +1 -1
  21. data/lib/active_fedora/querying.rb +8 -4
  22. data/lib/active_fedora/rdf_datastream.rb +10 -9
  23. data/lib/active_fedora/rdf_node.rb +1 -1
  24. data/lib/active_fedora/rdf_node/term_proxy.rb +9 -5
  25. data/lib/active_fedora/relation.rb +1 -1
  26. data/lib/active_fedora/rels_ext_datastream.rb +1 -8
  27. data/lib/active_fedora/semantic_node.rb +0 -35
  28. data/lib/active_fedora/simple_datastream.rb +1 -1
  29. data/lib/active_fedora/solr_service.rb +6 -8
  30. data/lib/active_fedora/version.rb +1 -1
  31. data/lib/tasks/active_fedora_dev.rake +11 -3
  32. data/solr/conf/schema.xml +10 -1
  33. data/spec/integration/base_spec.rb +2 -347
  34. data/spec/integration/complex_rdf_datastream_spec.rb +1 -1
  35. data/spec/integration/full_featured_model_spec.rb +1 -9
  36. data/spec/integration/ntriples_datastream_spec.rb +4 -4
  37. data/spec/integration/om_datastream_spec.rb +2 -1
  38. data/spec/integration/rels_ext_datastream_spec.rb +1 -89
  39. data/spec/integration/scoped_query_spec.rb +4 -4
  40. data/spec/samples/hydra-mods_article_datastream.rb +2 -2
  41. data/spec/spec_helper.rb +3 -0
  42. data/spec/unit/base_spec.rb +7 -81
  43. data/spec/unit/datastream_spec.rb +0 -25
  44. data/spec/unit/has_many_collection_spec.rb +2 -27
  45. data/spec/unit/ntriples_datastream_spec.rb +28 -39
  46. data/spec/unit/om_datastream_spec.rb +13 -13
  47. data/spec/unit/qualified_dublin_core_datastream_spec.rb +1 -1
  48. data/spec/unit/query_spec.rb +1 -24
  49. data/spec/unit/semantic_node_spec.rb +0 -2
  50. data/spec/unit/simple_datastream_spec.rb +2 -2
  51. data/spec/unit/solr_config_options_spec.rb +1 -1
  52. metadata +76 -57
  53. checksums.yaml +0 -7
  54. data/.travis.yml +0 -8
  55. data/lib/active_fedora/file_management.rb +0 -81
  56. data/lib/active_fedora/metadata_datastream_helper.rb +0 -43
  57. data/lib/active_fedora/named_relationships.rb +0 -99
  58. data/lib/active_fedora/relationships.rb +0 -663
  59. data/spec/integration/base_file_management_spec.rb +0 -24
  60. data/spec/integration/has_many_associations_spec.rb +0 -64
  61. data/spec/integration/metadata_datastream_helper_spec.rb +0 -100
  62. data/spec/integration/semantic_node_spec.rb +0 -457
  63. data/spec/unit/base_file_management_spec.rb +0 -95
  64. data/spec/unit/has_and_belongs_to_many_collection_spec.rb +0 -59
  65. data/spec/unit/relationships_spec.rb +0 -871
@@ -68,15 +68,15 @@ describe ActiveFedora::NtriplesRDFDatastream do
68
68
  subject.date_uploaded = Date.parse('2012-11-02')
69
69
  subject.date_uploaded.first.should be_kind_of Date
70
70
  solr_document = subject.to_solr
71
- solr_document[ActiveFedora::SolrService.solr_name('rdf__date_uploaded', :date, :searchable)].should == ['2012-11-02T00:00:00Z']
71
+ solr_document[ActiveFedora::SolrService.solr_name('rdf__date_uploaded', type: :date)].should == ['2012-11-02T00:00:00Z']
72
72
  end
73
73
 
74
74
  it "should produce a solr document" do
75
75
  @subject = RdfTest.new(title: "War and Peace")
76
76
  solr_document = @subject.to_solr
77
- solr_document[ActiveFedora::SolrService.solr_name('rdf__title', :string, :displayable)].should == ["War and Peace"]
78
- solr_document[ActiveFedora::SolrService.solr_name('rdf__title', :string, :facetable)].should == ["War and Peace"]
79
- solr_document[ActiveFedora::SolrService.solr_name('rdf__title', :string, :searchable)].should == ["War and Peace"]
77
+ solr_document[ActiveFedora::SolrService.solr_name('rdf__title', :displayable)].should == ["War and Peace"]
78
+ solr_document[ActiveFedora::SolrService.solr_name('rdf__title', :facetable)].should == ["War and Peace"]
79
+ solr_document[ActiveFedora::SolrService.solr_name('rdf__title', type: :string)].should == ["War and Peace"]
80
80
  end
81
81
 
82
82
  it "should set and recall values" do
@@ -26,6 +26,7 @@ describe ActiveFedora::OmDatastream do
26
26
  @test_object = HydrangeaArticle2.find(@pid)
27
27
 
28
28
  @test_object.descMetadata.ng_xml = @test_object.descMetadata.ng_xml
29
+
29
30
  @test_object.descMetadata.should_not be_changed
30
31
  end
31
32
 
@@ -118,7 +119,7 @@ describe ActiveFedora::OmDatastream do
118
119
 
119
120
  end
120
121
  it "should solrize terms with :type=>'date' to *_dt solr terms" do
121
- @test_object.to_solr[ActiveFedora::SolrService.solr_name('mods_journal_issue_publication_date', :date)].should == ['2012-11-02T00:00:00Z']
122
+ @test_object.to_solr[ActiveFedora::SolrService.solr_name('mods_journal_issue_publication_date', type: :date)].should == ['2012-11-02T00:00:00Z']
122
123
  end
123
124
  end
124
125
  end
@@ -74,95 +74,7 @@ describe ActiveFedora::RelsExtDatastream do
74
74
  # make sure that _something_ was actually added to the object's relationships hash
75
75
  @test_object.ids_for_outbound(:is_member_of).size.should == 1
76
76
  new_rels = ActiveFedora::Base.find(@test_object.pid).relationships
77
-
78
- new_rels.to_a.each do |stmt|
79
- @test_object.relationships.should have_statement(stmt)
80
- end
81
-
82
-
83
- @test_object.relationships.to_a.each do |stmt|
84
- new_rels.should have_statement(stmt)
85
- end
86
-
87
- # new_rels.should == @test_object.relationships
77
+ new_rels.should == @test_object.relationships
88
78
  end
89
79
 
90
- describe '#from_solr' do
91
- before(:all) do
92
- @behavior = ActiveFedora::Relationships.deprecation_behavior
93
- @c_behavior = ActiveFedora::Relationships::ClassMethods.deprecation_behavior
94
- ActiveFedora::Relationships.deprecation_behavior = :silence
95
- ActiveFedora::Relationships::ClassMethods.deprecation_behavior = :silence
96
- end
97
-
98
- after :all do
99
- ActiveFedora::Relationships.deprecation_behavior = @behavior
100
- ActiveFedora::Relationships::ClassMethods.deprecation_behavior = @c_behavior
101
- end
102
- before do
103
- class MockAFRelsSolr < ActiveFedora::Base
104
- include ActiveFedora::FileManagement
105
- has_relationship "testing", :has_part, :type=>MockAFRelsSolr
106
- has_relationship "testing2", :has_member, :type=>MockAFRelsSolr
107
- has_relationship "testing_inbound", :has_part, :type=>MockAFRelsSolr, :inbound=>true
108
- has_relationship "testing_inbound2", :has_member, :type=>MockAFRelsSolr, :inbound=>true
109
- end
110
- end
111
- it "should respond_to from_solr" do
112
- @test_datastream.respond_to?(:from_solr).should be_true
113
- end
114
-
115
- it 'should populate the relationships hash based on data in solr only for any possible fedora predicates' do
116
- @test_object2 = MockAFRelsSolr.new
117
- #@test_object2.new_object = true
118
- @test_object2.save
119
- @test_object3 = MockAFRelsSolr.new
120
- #@test_object3.new_object = true
121
- @test_object3.save
122
- @test_object4 = MockAFRelsSolr.new
123
- #@test_object4.new_object = true
124
- @test_object4.save
125
- @test_object5 = MockAFRelsSolr.new
126
- #@test_object5.new_object = true
127
- @test_object5.save
128
- #append to named relationship 'testing'
129
- @test_object2.testing_append(@test_object3)
130
- @test_object2.testing2_append(@test_object4)
131
- @test_object5.testing_append(@test_object2)
132
- @test_object5.testing2_append(@test_object3)
133
- @test_object2.save
134
- @test_object5.save
135
- model_rel = MockAFRelsSolr.to_class_uri
136
- #check inbound correct, testing goes to :has_part and testing2 goes to :has_member
137
- #get solr doc for @test_object2
138
- solr_doc = MockAFRelsSolr.find_with_conditions(:id=>@test_object2.pid).first
139
- test_from_solr_object2 = MockAFRelsSolr.new
140
- test_from_solr_object2.rels_ext.from_solr(solr_doc)
141
- solr_doc = MockAFRelsSolr.find_with_conditions(:id=>@test_object3.pid).first
142
- test_from_solr_object3 = MockAFRelsSolr.new
143
- test_from_solr_object3.rels_ext.from_solr(solr_doc)
144
- solr_doc = MockAFRelsSolr.find_with_conditions(:id=>@test_object4.pid).first
145
- test_from_solr_object4 = MockAFRelsSolr.new
146
- test_from_solr_object4.rels_ext.from_solr(solr_doc)
147
- solr_doc = MockAFRelsSolr.find_with_conditions(:id=>@test_object5.pid).first
148
- test_from_solr_object5 = MockAFRelsSolr.new
149
- test_from_solr_object5.rels_ext.from_solr(solr_doc)
150
-
151
- test_from_solr_object2.object_relations[:has_part].should include @test_object3.internal_uri
152
- test_from_solr_object2.object_relations[:has_member].should include @test_object4.internal_uri
153
- test_from_solr_object2.object_relations[:has_model].should include model_rel
154
-
155
- test_from_solr_object2.relationships_by_name.should == {:self=>{"testing"=>[@test_object3.internal_uri],"testing2"=>[@test_object4.internal_uri], "collection_members"=>[], "part_of"=>[], "parts_outbound"=>[@test_object3.internal_uri]}}
156
- test_from_solr_object3.object_relations[:has_model].should include model_rel
157
- test_from_solr_object3.relationships_by_name.should == {:self=>{"testing2"=>[], "collection_members"=>[], "part_of"=>[], "testing"=>[], "parts_outbound"=>[]}}
158
- test_from_solr_object4.object_relations[:has_model].should include model_rel
159
- test_from_solr_object4.relationships_by_name.should == {:self=>{"testing2"=>[], "collection_members"=>[], "part_of"=>[], "testing"=>[], "parts_outbound"=>[]}}
160
-
161
- test_from_solr_object5.object_relations[:has_model].should include model_rel
162
- test_from_solr_object5.object_relations[:has_part].should include @test_object2.internal_uri
163
- test_from_solr_object5.object_relations[:has_member].should include @test_object3.internal_uri
164
-
165
- test_from_solr_object5.relationships_by_name.should == {:self=>{"testing2"=>[@test_object3.internal_uri], "collection_members"=>[], "part_of"=>[], "testing"=>[@test_object2.internal_uri], "parts_outbound"=>[@test_object2.internal_uri]}}
166
- end
167
- end
168
80
  end
@@ -15,7 +15,7 @@ describe ActiveFedora::Model do
15
15
 
16
16
  def to_solr(doc = {})
17
17
  doc = super
18
- doc[ActiveFedora::SolrService.solr_name('foo', :string, :sortable)] = doc[ActiveFedora::SolrService.solr_name('foo', :string, :searchable)]
18
+ doc[ActiveFedora::SolrService.solr_name('foo', :sortable)] = doc[ActiveFedora::SolrService.solr_name('foo', type: :string)]
19
19
  doc
20
20
  end
21
21
 
@@ -71,18 +71,18 @@ describe ActiveFedora::Model do
71
71
  @test_instance3.delete
72
72
  end
73
73
  it "should query" do
74
- ModelIntegrationSpec::Basic.where(ActiveFedora::SolrService.solr_name('foo', :string, :searchable)=> 'Beta').should == [@test_instance1]
74
+ ModelIntegrationSpec::Basic.where(ActiveFedora::SolrService.solr_name('foo', type: :string)=> 'Beta').should == [@test_instance1]
75
75
  ModelIntegrationSpec::Basic.where('foo' => 'Beta').should == [@test_instance1]
76
76
  end
77
77
  it "should order" do
78
- ModelIntegrationSpec::Basic.order(ActiveFedora::SolrService.solr_name('foo', :string, :sortable) + ' asc').should == [@test_instance2, @test_instance1, @test_instance3]
78
+ ModelIntegrationSpec::Basic.order(ActiveFedora::SolrService.solr_name('foo', :sortable) + ' asc').should == [@test_instance2, @test_instance1, @test_instance3]
79
79
  end
80
80
  it "should limit" do
81
81
  ModelIntegrationSpec::Basic.limit(1).should == [@test_instance1]
82
82
  end
83
83
 
84
84
  it "should chain them" do
85
- ModelIntegrationSpec::Basic.where(ActiveFedora::SolrService.solr_name('bar', :string, :searchable) => 'Peanuts').order(ActiveFedora::SolrService.solr_name('foo', :string, :sortable) + ' asc').limit(1).should == [@test_instance2]
85
+ ModelIntegrationSpec::Basic.where(ActiveFedora::SolrService.solr_name('bar', type: :string) => 'Peanuts').order(ActiveFedora::SolrService.solr_name('foo', :sortable) + ' asc').limit(1).should == [@test_instance2]
86
86
  end
87
87
  end
88
88
  end
@@ -508,8 +508,8 @@ module Hydra
508
508
  def to_solr(solr_doc=Hash.new)
509
509
  super(solr_doc)
510
510
 
511
- ::Solrizer::Extractor.insert_solr_field_value(solr_doc, Solrizer.default_field_mapper.solr_name('object_type', :string, :facetable), "Article")
512
- ::Solrizer::Extractor.insert_solr_field_value(solr_doc, Solrizer.default_field_mapper.solr_name('mods_journal_title_info', :string, :facetable), "Unknown") if solr_doc["mods_journal_title_info_facet"].nil?
511
+ ::Solrizer::Extractor.insert_solr_field_value(solr_doc, Solrizer.default_field_mapper.solr_name('object_type', :facetable), "Article")
512
+ ::Solrizer::Extractor.insert_solr_field_value(solr_doc, Solrizer.default_field_mapper.solr_name('mods_journal_title_info', :facetable), "Unknown") if solr_doc["mods_journal_title_info_facet"].nil?
513
513
 
514
514
  solr_doc
515
515
  end
@@ -2,6 +2,9 @@ ENV["environment"] ||= 'test'
2
2
  require "bundler/setup"
3
3
 
4
4
  require 'simplecov'
5
+ require 'simplecov-rcov'
6
+
7
+ SimpleCov.formatter = SimpleCov::Formatter::RcovFormatter
5
8
  SimpleCov.start
6
9
 
7
10
  require 'active-fedora'
@@ -392,16 +392,16 @@ describe ActiveFedora::Base do
392
392
  @test_object.should_receive(:create_date).and_return("2012-03-04T03:12:02Z")
393
393
  @test_object.should_receive(:modified_date).and_return("2012-03-07T03:12:02Z")
394
394
  solr_doc = @test_object.to_solr
395
- solr_doc[ActiveFedora::SolrService.solr_name("system_create", :date, :searchable)].should eql("2012-03-04T03:12:02Z")
396
- solr_doc[ActiveFedora::SolrService.solr_name("system_modified", :date, :searchable)].should eql("2012-03-07T03:12:02Z")
395
+ solr_doc[ActiveFedora::SolrService.solr_name("system_create", type: :date)].should eql("2012-03-04T03:12:02Z")
396
+ solr_doc[ActiveFedora::SolrService.solr_name("system_modified", type: :date)].should eql("2012-03-07T03:12:02Z")
397
397
  solr_doc[:id].should eql("#{@test_object.pid}")
398
398
  end
399
399
 
400
400
  it "should omit base metadata and RELS-EXT if :model_only==true" do
401
401
  @test_object.add_relationship(:has_part, "foo", true)
402
402
  solr_doc = @test_object.to_solr(Hash.new, :model_only => true)
403
- solr_doc[ActiveFedora::SolrService.solr_name("system_create", :date, :searchable)].should be_nil
404
- solr_doc[ActiveFedora::SolrService.solr_name("system_modified", :date, :searchable)].should be_nil
403
+ solr_doc[ActiveFedora::SolrService.solr_name("system_create", type: :date)].should be_nil
404
+ solr_doc[ActiveFedora::SolrService.solr_name("system_modified", type: :date)].should be_nil
405
405
  solr_doc["id"].should be_nil
406
406
  solr_doc[ActiveFedora::SolrService.solr_name("has_part", :symbol)].should be_nil
407
407
  end
@@ -540,87 +540,13 @@ pending "This is broken, and deprecated. I don't want to fix it - jcoyne"
540
540
  end
541
541
 
542
542
  describe '#relationships_by_name' do
543
- before(:all) do
544
- @behavior = ActiveFedora::Relationships.deprecation_behavior
545
- @c_behavior = ActiveFedora::Relationships::ClassMethods.deprecation_behavior
546
- ActiveFedora::Relationships.deprecation_behavior = :silence
547
- ActiveFedora::Relationships::ClassMethods.deprecation_behavior = :silence
548
- end
549
-
550
- after :all do
551
- ActiveFedora::Relationships.deprecation_behavior = @behavior
552
- ActiveFedora::Relationships::ClassMethods.deprecation_behavior = @c_behavior
553
- end
554
-
555
543
  before do
556
544
  class MockNamedRelationships < ActiveFedora::Base
557
- include ActiveFedora::FileManagement
558
- has_relationship "testing", :has_part, :type=>ActiveFedora::Base
559
- has_relationship "testing2", :has_member, :type=>ActiveFedora::Base
560
- has_relationship "testing_inbound", :has_part, :type=>ActiveFedora::Base, :inbound=>true
545
+ # has_relationship "testing", :has_part, :type=>ActiveFedora::Base
546
+ # has_relationship "testing2", :has_member, :type=>ActiveFedora::Base
547
+ # has_relationship "testing_inbound", :has_part, :type=>ActiveFedora::Base, :inbound=>true
561
548
  end
562
549
  end
563
-
564
- it 'should return current relationships by name' do
565
- next_pid = increment_pid.to_s
566
- ActiveFedora::Base.stub(:assign_pid).and_return(next_pid)
567
- stub_get(next_pid)
568
- @test_object2 = MockNamedRelationships.new
569
- @test_object2.add_relationship(:has_model, MockNamedRelationships.to_class_uri)
570
- @test_object.add_relationship(:has_model, ActiveFedora::Base.to_class_uri)
571
- #should return expected named relationships
572
- @test_object2.relationships_by_name
573
- @test_object2.relationships_by_name[:self]["testing"].should == []
574
- @test_object2.relationships_by_name[:self]["testing2"].should == []
575
- @test_object2.relationships_by_name[:self]["parts_outbound"].should == []
576
- @test_object2.add_relationship_by_name("testing",@test_object)
577
- # @test_object2.relationships_by_name.should == {:self=>{"testing"=>[@test_object.internal_uri],"testing2"=>[],"part_of"=>[], "parts_outbound"=>[@test_object.internal_uri], "collection_members"=>[]}}
578
-
579
- @test_object2.relationships_by_name[:self]["testing"].should == [@test_object.internal_uri]
580
- @test_object2.relationships_by_name[:self]["testing2"].should == []
581
- @test_object2.relationships_by_name[:self]["parts_outbound"].should == [@test_object.internal_uri]
582
- end
583
- end
584
-
585
-
586
- describe '#create_relationship_name_methods' do
587
- before(:all) do
588
- @behavior = ActiveFedora::Relationships.deprecation_behavior
589
- @c_behavior = ActiveFedora::Relationships::ClassMethods.deprecation_behavior
590
- ActiveFedora::Relationships.deprecation_behavior = :silence
591
- ActiveFedora::Relationships::ClassMethods.deprecation_behavior = :silence
592
- end
593
-
594
- after :all do
595
- ActiveFedora::Relationships.deprecation_behavior = @behavior
596
- ActiveFedora::Relationships::ClassMethods.deprecation_behavior = @c_behavior
597
- end
598
-
599
- before do
600
- class MockCreateNamedRelationshipMethodsBase < ActiveFedora::Base
601
- include ActiveFedora::Relationships
602
- register_relationship_desc :self, "testing", :is_part_of, :type=>ActiveFedora::Base
603
- create_relationship_name_methods "testing"
604
- end
605
- end
606
-
607
- it 'should append and remove using helper methods for each outbound relationship' do
608
- next_pid = increment_pid.to_s
609
- ActiveFedora::Base.stub(:assign_pid).and_return(next_pid)
610
- stub_get(next_pid)
611
- @test_object2 = MockCreateNamedRelationshipMethodsBase.new
612
- @test_object2.should respond_to(:testing_append)
613
- @test_object2.should respond_to(:testing_remove)
614
- #test executing each one to make sure code added is correct
615
- model_pid =ActiveFedora::Base.to_class_uri
616
- @test_object.add_relationship(:has_model,model_pid)
617
- @test_object2.add_relationship(:has_model,model_pid)
618
- @test_object2.testing_append(@test_object)
619
- #create relationship to access generate_uri method for an object
620
- @test_object2.relationships_by_name[:self]["testing"].should == [@test_object.internal_uri]
621
- @test_object2.testing_remove(@test_object)
622
- @test_object2.relationships_by_name[:self]["testing"].should == []
623
- end
624
550
  end
625
551
 
626
552
  describe ".solrize_relationships" do
@@ -107,29 +107,4 @@ describe ActiveFedora::Datastream do
107
107
  @test_datastream.size.should be_nil
108
108
  end
109
109
  end
110
-
111
- describe ".from_xml" do
112
- it "should load a FOXML datastream node" do
113
- ds_xml = <<-EOS
114
- <foxml:datastream ID="DC" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true" xmlns:foxml="info:fedora/fedora-system:def/foxml#">
115
- <foxml:xmlContent>
116
- <datastream ID="DC" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
117
- <datastreamVersion ID="DC.1" LABEL="Dublin Core Record for this object" CREATED="2011-09-28T22:50:18.626Z" MIMETYPE="text/xml" FORMAT_URI="http://www.openarchives.org/OAI/2.0/oai_dc/" SIZE="526">
118
- <xmlContent>
119
- <oai_dc:dc xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd">
120
- <dc:title>Title</dc:title>
121
- <dc:identifier>0123456789</dc:identifier>
122
- </oai_dc:dc>
123
- </xmlContent>
124
- </datastreamVersion>
125
- </datastream>
126
- </foxml:xmlContent>
127
- </foxml:datastream>
128
- EOS
129
- ds_node = Nokogiri::XML(ds_xml).root
130
- ds = ActiveFedora::Datastream.from_xml(@test_datastream, ds_node)
131
- ds.should be_a(ActiveFedora::Datastream)
132
- end
133
- end
134
-
135
110
  end
@@ -1,35 +1,10 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe ActiveFedora::Associations::HasManyAssociation do
4
- it "should call add_relationship" do
5
- subject = stub("subject", :new_record? => false, :pid => 'subject:a', :internal_uri => 'info:fedora/subject:a')
6
- predicate = stub(:klass => mock.class, :options=>{:property=>'predicate'}, :class_name=> nil)
7
- ActiveFedora::SolrService.stub(:query).and_return([])
8
- ac = ActiveFedora::Associations::HasManyAssociation.new(subject, predicate)
9
- object = stub("object", :new_record? => false, :pid => 'object:b', :save => nil)
10
-
11
- object.should_receive(:add_relationship).with('predicate', subject)
12
-
13
- ac << object
14
-
15
- end
16
-
17
- it "should call remove_relationship" do
18
- subject = stub("subject", :new_record? => false, :pid => 'subject:a', :internal_uri => 'info:fedora/subject:a')
19
- predicate = stub(:klass => mock.class, :options=>{:property=>'predicate'}, :class_name=> nil)
20
- ActiveFedora::SolrService.stub(:query).and_return([])
21
- ac = ActiveFedora::Associations::HasManyAssociation.new(subject, predicate)
22
- object = stub("object", :new_record? => false, :pid => 'object:b', :save => nil)
23
-
24
- object.should_receive(:remove_relationship).with('predicate', subject)
25
-
26
- ac.delete(object)
27
-
28
- end
29
-
30
4
  it "should be able to replace the collection" do
31
5
  @owner = stub(:new_record? => false, :to_ary => nil, :internal_uri => 'info:fedora/changeme:99')
32
- @reflection = stub(:klass => mock.class, :options=>{:property=>'predicate'}, :class_name=> nil)
6
+ @reflection = stub(:klass => mock.class, :options=>{:property=>'predicate'})
7
+ #ac = ActiveFedora::Associations::AssociationCollection.new(@owner, @reflection)
33
8
  ac = ActiveFedora::Associations::HasManyAssociation.new(@owner, @reflection)
34
9
  @target = [stub(:to_ary => nil, :new_record? => false, :remove_relationship=>true), stub(:to_ary => nil, :new_record? => false, :remove_relationship=>true), stub(:to_ary => nil, :new_record? => false, :remove_relationship=>true)]
35
10
  ac.target = @target
@@ -9,7 +9,6 @@ describe ActiveFedora::NtriplesRDFDatastream do
9
9
  map.title(:in => RDF::DC)
10
10
  map.publisher(:in => RDF::DC)
11
11
  map.creator(:in => RDF::DC)
12
- map.educationLevel(:in => RDF::DC)
13
12
  map.based_near(:in => RDF::FOAF)
14
13
  map.related_url(:to => "seeAlso", :in => RDF::RDFS)
15
14
  end
@@ -40,16 +39,6 @@ describe ActiveFedora::NtriplesRDFDatastream do
40
39
  @subject.related_url.should == ["http://google.com/"]
41
40
  end
42
41
 
43
- it "should be able to call enumerable methods on the fields" do
44
- @subject.title.join(', ').should == "Title of work"
45
- @subject.title.count.should == 1
46
- @subject.title.size.should == 1
47
- @subject.title[0].should == "Title of work"
48
- @subject.title.to_a.should == ["Title of work"]
49
- val = []
50
- @subject.title.each_with_index {|v, i| val << "#{i}. #{v}"}
51
- val.should == ["0. Title of work"]
52
- end
53
42
 
54
43
  it "should return fields that are not TermProxies" do
55
44
  @subject.created.should be_kind_of Array
@@ -184,19 +173,19 @@ describe ActiveFedora::NtriplesRDFDatastream do
184
173
  end
185
174
  it "should iterate through @fields hash" do
186
175
  solr_doc = @subject.to_solr
187
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :string, :searchable)].should == ["publisher1"]
188
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :string, :sortable)].should == ["publisher1"]
189
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :string, :displayable)].should == ["publisher1"]
190
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :string, :facetable)].should == ["publisher1"]
191
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :string, :searchable)].should == ["coverage1", "coverage2"]
192
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :string, :displayable)].should == ["coverage1", "coverage2"]
193
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :string, :facetable)].should == ["coverage1", "coverage2"]
194
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__created", :string, :sortable)].should == ["2009-10-10"]
195
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__created", :string, :displayable)].should == ["2009-10-10"]
196
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__title", :string, :searchable)].should == ["fake-title"]
197
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__title", :string, :sortable)].should == ["fake-title"]
198
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__title", :string, :displayable)].should == ["fake-title"]
199
- solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__related_url", :string, :searchable)].should == ["http://example.org/"]
176
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__publisher", type: :string)].should == ["publisher1"]
177
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :sortable)].should == ["publisher1"]
178
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :displayable)].should == ["publisher1"]
179
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :facetable)].should == ["publisher1"]
180
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__based_near", type: :string)].should == ["coverage1", "coverage2"]
181
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :displayable)].should == ["coverage1", "coverage2"]
182
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :facetable)].should == ["coverage1", "coverage2"]
183
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__created", :sortable)].should == ["2009-10-10"]
184
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__created", :displayable)].should == ["2009-10-10"]
185
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__title", type: :string)].should == ["fake-title"]
186
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__title", :sortable)].should == ["fake-title"]
187
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__title", :displayable)].should == ["fake-title"]
188
+ solr_doc[ActiveFedora::SolrService.solr_name("solr_rdf__related_url", type: :string)].should == ["http://example.org/"]
200
189
  end
201
190
 
202
191
  describe "with an actual object" do
@@ -240,25 +229,25 @@ describe ActiveFedora::NtriplesRDFDatastream do
240
229
  end
241
230
  describe ".to_solr()" do
242
231
  it "should return the right fields" do
243
- @obj.to_solr.keys.should include(ActiveFedora::SolrService.solr_name("solr_rdf__related_url", :string, :searchable),
244
- ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :string, :searchable),
245
- ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :string, :sortable),
246
- ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :string, :displayable),
247
- ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :string, :facetable),
248
- ActiveFedora::SolrService.solr_name("solr_rdf__created", :string, :sortable),
249
- ActiveFedora::SolrService.solr_name("solr_rdf__created", :string, :displayable),
250
- ActiveFedora::SolrService.solr_name("solr_rdf__title", :string, :searchable),
251
- ActiveFedora::SolrService.solr_name("solr_rdf__title", :string, :sortable),
252
- ActiveFedora::SolrService.solr_name("solr_rdf__title", :string, :displayable),
253
- ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :string, :searchable),
254
- ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :string, :facetable),
255
- ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :string, :displayable))
232
+ @obj.to_solr.keys.should include(ActiveFedora::SolrService.solr_name("solr_rdf__related_url", type: :string),
233
+ ActiveFedora::SolrService.solr_name("solr_rdf__publisher", type: :string),
234
+ ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :sortable),
235
+ ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :displayable),
236
+ ActiveFedora::SolrService.solr_name("solr_rdf__publisher", :facetable),
237
+ ActiveFedora::SolrService.solr_name("solr_rdf__created", :sortable),
238
+ ActiveFedora::SolrService.solr_name("solr_rdf__created", :displayable),
239
+ ActiveFedora::SolrService.solr_name("solr_rdf__title", type: :string),
240
+ ActiveFedora::SolrService.solr_name("solr_rdf__title", :sortable),
241
+ ActiveFedora::SolrService.solr_name("solr_rdf__title", :displayable),
242
+ ActiveFedora::SolrService.solr_name("solr_rdf__based_near", type: :string),
243
+ ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :facetable),
244
+ ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :displayable))
256
245
 
257
246
  end
258
247
 
259
248
  it "should return the right values" do
260
- @obj.to_solr[ActiveFedora::SolrService.solr_name("solr_rdf__related_url", :string, :searchable)].should == ["http://example.org/blogtastic/"]
261
- @obj.to_solr[ActiveFedora::SolrService.solr_name("solr_rdf__based_near", :string, :searchable)].should == ["Tacoma, WA","Renton, WA"]
249
+ @obj.to_solr[ActiveFedora::SolrService.solr_name("solr_rdf__related_url", type: :string)].should == ["http://example.org/blogtastic/"]
250
+ @obj.to_solr[ActiveFedora::SolrService.solr_name("solr_rdf__based_near", type: :string)].should == ["Tacoma, WA","Renton, WA"]
262
251
  end
263
252
  end
264
253
  end