active-fedora 6.0.0.rc5 → 6.0.0.rc6
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.
- checksums.yaml +4 -4
- data/active-fedora.gemspec +1 -1
- data/lib/active_fedora/datastream_hash.rb +1 -1
- data/lib/active_fedora/datastreams.rb +1 -1
- data/lib/active_fedora/nom_datastream.rb +1 -1
- data/lib/active_fedora/om_datastream.rb +5 -6
- data/lib/active_fedora/rels_ext_datastream.rb +2 -2
- data/lib/active_fedora/version.rb +1 -1
- data/lib/tasks/active_fedora_dev.rake +0 -32
- data/spec/integration/bug_spec.rb +11 -26
- data/spec/integration/om_datastream_spec.rb +121 -101
- data/spec/unit/datastreams_spec.rb +4 -3
- data/spec/unit/nom_datastream_spec.rb +5 -1
- data/spec/unit/om_datastream_spec.rb +3 -4
- data/spec/unit/rels_ext_datastream_spec.rb +1 -0
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9409f2deb359a4478e64508db0a9e1efeddd3ede
|
4
|
+
data.tar.gz: 24abcbc60267a4dc7d119ea21e02bdf792f12b39
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c3447788f7c5fbe82a19d97bee6f6c4b8fbef4811738e3555f9c853d18e0e77f8b3acc1114d342f27177d9b65ecfde8e45818568337d82cd4856bb145b42f029
|
7
|
+
data.tar.gz: 0e0471d596cd79f882e9face2f5f70c6a93ff72ce19e6759e081c79d7db2575354f1b74aa044ea7f807857c8af6455b1a05fa2c4f204ea8af9b76a30236fac5e
|
data/active-fedora.gemspec
CHANGED
@@ -31,7 +31,7 @@ Gem::Specification.new do |s|
|
|
31
31
|
s.add_development_dependency("yard")
|
32
32
|
s.add_development_dependency("RedCloth") # for RDoc formatting
|
33
33
|
s.add_development_dependency("rake")
|
34
|
-
s.add_development_dependency("jettywrapper", ">=1.
|
34
|
+
s.add_development_dependency("jettywrapper", ">=1.4.0")
|
35
35
|
s.add_development_dependency("rspec", ">= 2.9.0")
|
36
36
|
s.add_development_dependency("equivalent-xml")
|
37
37
|
s.add_development_dependency("rest-client")
|
@@ -4,7 +4,7 @@ module ActiveFedora
|
|
4
4
|
|
5
5
|
included do
|
6
6
|
class_attribute :ds_specs
|
7
|
-
self.ds_specs = {'RELS-EXT'=> {:type=> ActiveFedora::RelsExtDatastream, :label=>"Fedora Object-to-Object Relationship Metadata", :
|
7
|
+
self.ds_specs = {'RELS-EXT'=> {:type=> ActiveFedora::RelsExtDatastream, :label=>"Fedora Object-to-Object Relationship Metadata", :block=>nil}}
|
8
8
|
class << self
|
9
9
|
def inherited_with_datastreams(kls) #:nodoc:
|
10
10
|
## Do some inheritance logic that doesn't override Base.inherited
|
@@ -10,7 +10,7 @@ module ActiveFedora
|
|
10
10
|
false
|
11
11
|
end
|
12
12
|
end
|
13
|
-
|
13
|
+
|
14
14
|
include OM::XML::Document
|
15
15
|
include OM::XML::TerminologyBasedSolrizer # this adds support for calling .to_solr
|
16
16
|
|
@@ -20,7 +20,7 @@ module ActiveFedora
|
|
20
20
|
attr_accessor :internal_solr_doc
|
21
21
|
|
22
22
|
def self.default_attributes
|
23
|
-
super.merge(:controlGroup => '
|
23
|
+
super.merge(:controlGroup => 'M', :mimeType => 'text/xml')
|
24
24
|
end
|
25
25
|
|
26
26
|
# Create an instance of this class based on xml content
|
@@ -95,10 +95,9 @@ module ActiveFedora
|
|
95
95
|
true
|
96
96
|
end
|
97
97
|
|
98
|
-
def
|
99
|
-
|
100
|
-
|
101
|
-
val unless val == "<?xml version=\"1.0\"?>\n"
|
98
|
+
def local_or_remote_content(ensure_fetch = true)
|
99
|
+
@content = to_xml if ng_xml_changed? || autocreate?
|
100
|
+
super
|
102
101
|
end
|
103
102
|
|
104
103
|
def autocreate?
|
@@ -2,38 +2,6 @@ APP_ROOT = File.expand_path("#{File.dirname(__FILE__)}/../../")
|
|
2
2
|
|
3
3
|
require 'jettywrapper'
|
4
4
|
|
5
|
-
namespace :jetty do
|
6
|
-
JETTY_URL = 'https://github.com/projecthydra/hydra-jetty/archive/new-solr-schema.zip'
|
7
|
-
JETTY_ZIP = File.join 'tmp', JETTY_URL.split('/').last
|
8
|
-
JETTY_DIR = 'jetty'
|
9
|
-
|
10
|
-
desc "download the jetty zip file"
|
11
|
-
task :download do
|
12
|
-
system 'mkdir tmp' unless File.directory? 'tmp'
|
13
|
-
puts "Downloading jetty..."
|
14
|
-
system "curl -L #{JETTY_URL} -o #{JETTY_ZIP}"
|
15
|
-
abort "Unable to download jetty from #{JETTY_URL}" unless $?.success?
|
16
|
-
end
|
17
|
-
|
18
|
-
task :unzip do
|
19
|
-
Rake::Task["jetty:download"].invoke unless File.exists? JETTY_ZIP
|
20
|
-
puts "Unpacking jetty..."
|
21
|
-
tmp_save_dir = File.join 'tmp', 'jetty_generator'
|
22
|
-
system "unzip -d #{tmp_save_dir} -qo #{JETTY_ZIP}"
|
23
|
-
abort "Unable to unzip #{JETTY_ZIP} into tmp_save_dir/" unless $?.success?
|
24
|
-
|
25
|
-
expanded_dir = Dir[File.join(tmp_save_dir, "hydra-jetty-*")].first
|
26
|
-
|
27
|
-
system "mv #{expanded_dir} #{JETTY_DIR}"
|
28
|
-
abort "Unable to move #{expanded_dir} into #{JETTY_DIR}/" unless $?.success?
|
29
|
-
end
|
30
|
-
|
31
|
-
task :clean do
|
32
|
-
system "rm -rf #{JETTY_DIR}"
|
33
|
-
Rake::Task["jetty:unzip"].invoke
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
5
|
namespace :active_fedora do
|
38
6
|
require 'active-fedora'
|
39
7
|
|
@@ -6,46 +6,31 @@ require "rexml/document"
|
|
6
6
|
include ActiveFedora::Model
|
7
7
|
|
8
8
|
describe 'bugs' do
|
9
|
-
before
|
9
|
+
before do
|
10
10
|
class FooHistory < ActiveFedora::Base
|
11
11
|
has_metadata :type=>ActiveFedora::SimpleDatastream, :name=>"someData" do |m|
|
12
12
|
m.field "fubar", :string
|
13
|
-
m.field "swank", :text
|
14
|
-
end
|
15
|
-
has_metadata :type=>ActiveFedora::SimpleDatastream, :name=>"withText" do |m|
|
16
|
-
m.field "fubar", :text
|
17
13
|
end
|
18
14
|
end
|
19
|
-
end
|
20
|
-
after :all do
|
21
|
-
Object.send(:remove_const, :FooHistory)
|
22
|
-
end
|
23
|
-
|
24
|
-
before(:each) do
|
25
15
|
@test_object = FooHistory.new
|
26
16
|
@test_object.save
|
27
17
|
end
|
28
|
-
after
|
18
|
+
after do
|
29
19
|
@test_object.delete
|
20
|
+
Object.send(:remove_const, :FooHistory)
|
30
21
|
end
|
31
|
-
it "should not clobber everything when setting a value" do
|
32
|
-
ds = @test_object.datastreams["someData"]
|
33
|
-
ds.fubar.should == []
|
34
|
-
ds.should_not be_nil
|
35
|
-
ds.fubar=['bar']
|
36
|
-
ds.fubar.should == ['bar']
|
37
|
-
@test_object.save
|
38
22
|
|
39
|
-
|
23
|
+
it "should not clobber everything when setting a value" do
|
24
|
+
@test_object.someData.fubar=['initial']
|
25
|
+
@test_object.save!
|
40
26
|
|
41
27
|
x = FooHistory.find(@test_object.pid)
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
x.save
|
28
|
+
x.someData.fubar = ["replacement"] # set a new value
|
29
|
+
x.save!
|
30
|
+
|
31
|
+
|
47
32
|
x = FooHistory.find(@test_object.pid)
|
48
|
-
x.
|
33
|
+
x.someData.fubar.should == ["replacement"] # recall the value
|
49
34
|
x.save
|
50
35
|
end
|
51
36
|
end
|
@@ -3,31 +3,21 @@ require "solrizer"
|
|
3
3
|
|
4
4
|
describe ActiveFedora::OmDatastream do
|
5
5
|
|
6
|
-
before(:all) do
|
7
|
-
class HydrangeaArticle2 < ActiveFedora::Base
|
8
|
-
# Uses the Hydra MODS Article profile for tracking most of the descriptive metadata
|
9
|
-
has_metadata :name => "descMetadata", :type => Hydra::ModsArticleDatastream
|
10
|
-
|
11
|
-
# A place to put extra metadata values
|
12
|
-
has_metadata :name => "properties", :type => ActiveFedora::SimpleDatastream do |m|
|
13
|
-
m.field 'collection', :string
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
end
|
18
|
-
|
19
|
-
after(:all) do
|
20
|
-
Object.send(:remove_const, :HydrangeaArticle2)
|
21
|
-
end
|
22
|
-
|
23
6
|
describe "an new instance with a inline datastream" do
|
24
7
|
before do
|
25
|
-
|
8
|
+
class HydrangeaArticle3 < ActiveFedora::Base
|
9
|
+
# Uses the Hydra MODS Article profile for tracking most of the descriptive metadata
|
10
|
+
has_metadata :name => "descMetadata", :type => Hydra::ModsArticleDatastream, :control_group => 'X'
|
11
|
+
|
12
|
+
end
|
13
|
+
|
14
|
+
@obj = HydrangeaArticle3.new
|
26
15
|
@obj.save
|
27
16
|
@obj.descMetadata.should be_inline
|
28
17
|
end
|
29
18
|
after do
|
30
19
|
@obj.destroy
|
20
|
+
Object.send(:remove_const, :HydrangeaArticle3)
|
31
21
|
end
|
32
22
|
it "should not be changed when no fields have been set" do
|
33
23
|
@obj.descMetadata.should_not be_content_changed
|
@@ -36,108 +26,138 @@ describe ActiveFedora::OmDatastream do
|
|
36
26
|
@obj.descMetadata.title = 'Foobar'
|
37
27
|
@obj.descMetadata.should be_content_changed
|
38
28
|
end
|
39
|
-
|
29
|
+
describe "#changed?" do
|
30
|
+
it "should not be changed if the new xml matches the old xml" do
|
31
|
+
@pid = "hydrangea:fixture_mods_article2"
|
32
|
+
@test_object = HydrangeaArticle3.find(@pid)
|
40
33
|
|
34
|
+
@test_object.descMetadata.ng_xml = @test_object.descMetadata.ng_xml
|
35
|
+
@test_object.descMetadata.should_not be_changed
|
36
|
+
end
|
41
37
|
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
38
|
+
it "should not be changed if there are minor differences in whitespace" do
|
39
|
+
obj = HydrangeaArticle3.new
|
40
|
+
obj.descMetadata.content = "<a>1</a>"
|
41
|
+
obj.save
|
42
|
+
obj.descMetadata.should_not be_changed
|
43
|
+
obj.descMetadata.content = "<a>1</a>\n"
|
44
|
+
obj.descMetadata.should_not be_changed
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
46
48
|
|
47
|
-
|
48
|
-
|
49
|
+
|
50
|
+
describe "an instance that is a managed datastream" do
|
51
|
+
before(:all) do
|
52
|
+
class HydrangeaArticle2 < ActiveFedora::Base
|
53
|
+
# Uses the Hydra MODS Article profile for tracking most of the descriptive metadata
|
54
|
+
has_metadata :name => "descMetadata", :type => Hydra::ModsArticleDatastream
|
55
|
+
end
|
49
56
|
end
|
50
57
|
|
58
|
+
after(:all) do
|
59
|
+
Object.send(:remove_const, :HydrangeaArticle2)
|
60
|
+
end
|
51
61
|
|
52
|
-
|
62
|
+
describe "#changed?" do
|
63
|
+
it "should not be changed if the new xml matches the old xml" do
|
64
|
+
@pid = "hydrangea:fixture_mods_article2"
|
65
|
+
@test_object = HydrangeaArticle2.find(@pid)
|
53
66
|
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
obj.descMetadata.should_not be_changed
|
58
|
-
obj.descMetadata.content = "<a>1</a>\n"
|
59
|
-
obj.descMetadata.should_not be_changed
|
67
|
+
@test_object.descMetadata.ng_xml = @test_object.descMetadata.ng_xml
|
68
|
+
@test_object.descMetadata.should_not be_changed
|
69
|
+
end
|
60
70
|
|
71
|
+
it "should be changed if there are minor differences in whitespace" do
|
72
|
+
obj = HydrangeaArticle2.new
|
73
|
+
obj.descMetadata.content = "<a>1</a>"
|
74
|
+
obj.save
|
75
|
+
obj.descMetadata.should_not be_changed
|
76
|
+
obj.descMetadata.content = "<a>1</a>\n"
|
77
|
+
obj.descMetadata.should be_changed
|
78
|
+
end
|
61
79
|
end
|
62
|
-
end
|
63
80
|
|
64
|
-
describe "empty datastream content" do
|
65
|
-
it "should not break when there is empty datastream content" do
|
66
|
-
obj = HydrangeaArticle2.new
|
67
|
-
obj.descMetadata.content = ""
|
68
|
-
obj.save
|
69
81
|
|
70
|
-
end
|
71
|
-
end
|
72
82
|
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
@test_object.save
|
79
|
-
@test_object = HydrangeaArticle2.find(@pid)
|
80
|
-
@test_solr_object = ActiveFedora::Base.load_instance_from_solr(@pid)
|
81
|
-
end
|
83
|
+
describe "empty datastream content" do
|
84
|
+
it "should not break when there is empty datastream content" do
|
85
|
+
obj = HydrangeaArticle2.new
|
86
|
+
obj.descMetadata.content = ""
|
87
|
+
obj.save
|
82
88
|
|
83
|
-
|
84
|
-
@test_solr_object.datastreams["descMetadata"].term_values(:name,:role,:text).should == ["Creator","Contributor","Funder","Host"]
|
85
|
-
@test_solr_object.datastreams["descMetadata"].term_values({:name=>0},:role,:text).should == ["Creator"]
|
86
|
-
@test_solr_object.datastreams["descMetadata"].term_values({:name=>1},:role,:text).should == ["Contributor"]
|
87
|
-
@test_solr_object.datastreams["descMetadata"].term_values({:name=>0},{:role=>0},:text).should == ["Creator"]
|
88
|
-
@test_solr_object.datastreams["descMetadata"].term_values({:name=>1},{:role=>0},:text).should == ["Contributor"]
|
89
|
-
@test_solr_object.datastreams["descMetadata"].term_values({:name=>1},{:role=>1},:text).should == []
|
90
|
-
ar = @test_solr_object.datastreams["descMetadata"].term_values(:name,{:role=>0},:text)
|
91
|
-
ar.length.should == 4
|
92
|
-
ar.include?("Creator").should == true
|
93
|
-
ar.include?("Contributor").should == true
|
94
|
-
ar.include?("Funder").should == true
|
95
|
-
ar.include?("Host").should == true
|
96
|
-
|
97
|
-
@test_object.datastreams["descMetadata"].term_values(:name,:role,:text).should == ["Creator","Contributor","Funder","Host"]
|
98
|
-
@test_object.datastreams["descMetadata"].term_values({:name=>0},:role,:text).should == ["Creator"]
|
99
|
-
@test_object.datastreams["descMetadata"].term_values({:name=>1},:role,:text).should == ["Contributor"]
|
100
|
-
@test_object.datastreams["descMetadata"].term_values({:name=>0},{:role=>0},:text).should == ["Creator"]
|
101
|
-
@test_object.datastreams["descMetadata"].term_values({:name=>1},{:role=>0},:text).should == ["Contributor"]
|
102
|
-
@test_object.datastreams["descMetadata"].term_values({:name=>1},{:role=>1},:text).should == []
|
103
|
-
ar = @test_object.datastreams["descMetadata"].term_values(:name,{:role=>0},:text)
|
104
|
-
ar.length.should == 4
|
105
|
-
ar.include?("Creator").should == true
|
106
|
-
ar.include?("Contributor").should == true
|
107
|
-
ar.include?("Funder").should == true
|
108
|
-
ar.include?("Host").should == true
|
89
|
+
end
|
109
90
|
end
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
91
|
+
|
92
|
+
describe '.term_values' do
|
93
|
+
before do
|
94
|
+
@pid = "hydrangea:fixture_mods_article2"
|
95
|
+
@test_object = HydrangeaArticle2.find(@pid)
|
96
|
+
@test_object.descMetadata.content = File.read(fixture('mods_articles/hydrangea_article1.xml'))
|
97
|
+
@test_object.save
|
98
|
+
@test_object = HydrangeaArticle2.find(@pid)
|
99
|
+
@test_solr_object = ActiveFedora::Base.load_instance_from_solr(@pid)
|
100
|
+
end
|
101
|
+
|
102
|
+
it "should return the same values whether getting from solr or Fedora" do
|
103
|
+
@test_solr_object.datastreams["descMetadata"].term_values(:name,:role,:text).should == ["Creator","Contributor","Funder","Host"]
|
104
|
+
@test_solr_object.datastreams["descMetadata"].term_values({:name=>0},:role,:text).should == ["Creator"]
|
105
|
+
@test_solr_object.datastreams["descMetadata"].term_values({:name=>1},:role,:text).should == ["Contributor"]
|
106
|
+
@test_solr_object.datastreams["descMetadata"].term_values({:name=>0},{:role=>0},:text).should == ["Creator"]
|
107
|
+
@test_solr_object.datastreams["descMetadata"].term_values({:name=>1},{:role=>0},:text).should == ["Contributor"]
|
108
|
+
@test_solr_object.datastreams["descMetadata"].term_values({:name=>1},{:role=>1},:text).should == []
|
109
|
+
ar = @test_solr_object.datastreams["descMetadata"].term_values(:name,{:role=>0},:text)
|
110
|
+
ar.length.should == 4
|
111
|
+
ar.include?("Creator").should == true
|
112
|
+
ar.include?("Contributor").should == true
|
113
|
+
ar.include?("Funder").should == true
|
114
|
+
ar.include?("Host").should == true
|
115
|
+
|
116
|
+
@test_object.datastreams["descMetadata"].term_values(:name,:role,:text).should == ["Creator","Contributor","Funder","Host"]
|
117
|
+
@test_object.datastreams["descMetadata"].term_values({:name=>0},:role,:text).should == ["Creator"]
|
118
|
+
@test_object.datastreams["descMetadata"].term_values({:name=>1},:role,:text).should == ["Contributor"]
|
119
|
+
@test_object.datastreams["descMetadata"].term_values({:name=>0},{:role=>0},:text).should == ["Creator"]
|
120
|
+
@test_object.datastreams["descMetadata"].term_values({:name=>1},{:role=>0},:text).should == ["Contributor"]
|
121
|
+
@test_object.datastreams["descMetadata"].term_values({:name=>1},{:role=>1},:text).should == []
|
122
|
+
ar = @test_object.datastreams["descMetadata"].term_values(:name,{:role=>0},:text)
|
123
|
+
ar.length.should == 4
|
124
|
+
ar.include?("Creator").should == true
|
125
|
+
ar.include?("Contributor").should == true
|
126
|
+
ar.include?("Funder").should == true
|
127
|
+
ar.include?("Host").should == true
|
128
|
+
end
|
119
129
|
end
|
130
|
+
|
131
|
+
describe '.update_values' do
|
132
|
+
before do
|
133
|
+
@pid = "hydrangea:fixture_mods_article2"
|
134
|
+
@test_object = HydrangeaArticle2.find(@pid)
|
135
|
+
@test_object.descMetadata.content = File.read(fixture('mods_articles/hydrangea_article1.xml'))
|
136
|
+
@test_object.save
|
137
|
+
@test_object = HydrangeaArticle2.find(@pid)
|
138
|
+
end
|
120
139
|
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
140
|
+
it "should not be dirty after .update_values is saved" do
|
141
|
+
@test_object.datastreams["descMetadata"].update_values([{:name=>0},{:role=>0},:text] =>"Funder")
|
142
|
+
@test_object.datastreams["descMetadata"].should be_changed
|
143
|
+
@test_object.save
|
144
|
+
@test_object.datastreams["descMetadata"].should_not be_changed
|
145
|
+
@test_object.datastreams["descMetadata"].term_values({:name=>0},{:role=>0},:text).should == ["Funder"]
|
146
|
+
end
|
147
|
+
end
|
129
148
|
|
130
149
|
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
150
|
+
describe ".to_solr" do
|
151
|
+
before do
|
152
|
+
object = HydrangeaArticle2.new
|
153
|
+
object.descMetadata.journal.issue.publication_date = Date.parse('2012-11-02')
|
154
|
+
object.save!
|
155
|
+
@test_object = HydrangeaArticle2.find(object.pid)
|
137
156
|
|
138
|
-
|
139
|
-
|
140
|
-
|
157
|
+
end
|
158
|
+
it "should solrize terms with :type=>'date' to *_dt solr terms" do
|
159
|
+
@test_object.to_solr[ActiveFedora::SolrService.solr_name('mods_journal_issue_publication_date', type: :date)].should == ['2012-11-02T00:00:00Z']
|
160
|
+
end
|
141
161
|
end
|
142
162
|
end
|
143
163
|
end
|
@@ -177,9 +177,10 @@ describe ActiveFedora::Datastreams do
|
|
177
177
|
|
178
178
|
describe "#dc" do
|
179
179
|
it "should be the DC datastream" do
|
180
|
-
|
181
|
-
|
182
|
-
|
180
|
+
subject.dc.should be_kind_of ActiveFedora::Datastream
|
181
|
+
end
|
182
|
+
it "should be an inline datastream" do
|
183
|
+
subject.dc.controlGroup.should == 'X'
|
183
184
|
end
|
184
185
|
end
|
185
186
|
|
@@ -22,6 +22,10 @@ describe ActiveFedora::NomDatastream do
|
|
22
22
|
subject.to_solr['a_s'].should include('123')
|
23
23
|
subject.to_solr['b_s'].should include('asdf')
|
24
24
|
end
|
25
|
+
|
26
|
+
it "should be a managed datastream" do
|
27
|
+
subject.controlGroup.should == 'M'
|
28
|
+
end
|
25
29
|
end
|
26
30
|
|
27
31
|
describe "with options for .set_terminology" do
|
@@ -54,4 +58,4 @@ describe ActiveFedora::NomDatastream do
|
|
54
58
|
end
|
55
59
|
|
56
60
|
end
|
57
|
-
end
|
61
|
+
end
|
@@ -31,11 +31,10 @@ describe ActiveFedora::OmDatastream do
|
|
31
31
|
@test_ds.stub(:new? => false)
|
32
32
|
end
|
33
33
|
|
34
|
-
after(:each) do
|
35
|
-
end
|
36
|
-
|
37
34
|
its(:metadata?) { should be_true}
|
38
35
|
|
36
|
+
its(:controlGroup) { should == "M"}
|
37
|
+
|
39
38
|
it "should include the Solrizer::XML::TerminologyBasedSolrizer for .to_solr support" do
|
40
39
|
ActiveFedora::OmDatastream.included_modules.should include(OM::XML::TerminologyBasedSolrizer)
|
41
40
|
end
|
@@ -175,7 +174,7 @@ describe ActiveFedora::OmDatastream do
|
|
175
174
|
@test_ds.stub(:new? => true)
|
176
175
|
@test_ds.stub(:ng_xml_changed? => true)
|
177
176
|
@test_ds.stub(:to_xml => "fake xml")
|
178
|
-
@mock_repo.should_receive(:add_datastream).with(:pid => nil, :dsid => 'descMetadata', :versionable => true, :content => 'fake xml', :controlGroup => '
|
177
|
+
@mock_repo.should_receive(:add_datastream).with(:pid => nil, :dsid => 'descMetadata', :versionable => true, :content => 'fake xml', :controlGroup => 'M', :dsState => 'A', :mimeType=>'text/xml')
|
179
178
|
|
180
179
|
@test_ds.serialize!
|
181
180
|
@test_ds.save
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: active-fedora
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.0.0.
|
4
|
+
version: 6.0.0.rc6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Zumwalt
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2013-03-
|
13
|
+
date: 2013-03-12 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rsolr
|
@@ -242,14 +242,14 @@ dependencies:
|
|
242
242
|
requirements:
|
243
243
|
- - '>='
|
244
244
|
- !ruby/object:Gem::Version
|
245
|
-
version: 1.
|
245
|
+
version: 1.4.0
|
246
246
|
type: :development
|
247
247
|
prerelease: false
|
248
248
|
version_requirements: !ruby/object:Gem::Requirement
|
249
249
|
requirements:
|
250
250
|
- - '>='
|
251
251
|
- !ruby/object:Gem::Version
|
252
|
-
version: 1.
|
252
|
+
version: 1.4.0
|
253
253
|
- !ruby/object:Gem::Dependency
|
254
254
|
name: rspec
|
255
255
|
requirement: !ruby/object:Gem::Requirement
|