om 1.5.1 → 1.5.2
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.
- data/.rvmrc +1 -1
- data/Gemfile.lock +1 -1
- data/History.textile +4 -0
- data/lib/om/version.rb +1 -1
- data/lib/om/xml/term_value_operators.rb +1 -1
- data/spec/unit/term_value_operators_spec.rb +1 -1
- metadata +62 -97
data/.rvmrc
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
# This is an RVM Project .rvmrc file, used to automatically load the ruby
|
4
4
|
# development environment upon cd'ing into the directory
|
5
5
|
|
6
|
-
ruby_string="
|
6
|
+
ruby_string="1.9.3"
|
7
7
|
gemset_name="om"
|
8
8
|
|
9
9
|
# Install rubies when used instead of only displaying a warning and exiting
|
data/Gemfile.lock
CHANGED
data/History.textile
CHANGED
data/lib/om/version.rb
CHANGED
@@ -137,7 +137,7 @@ module OM::XML::TermValueOperators
|
|
137
137
|
|
138
138
|
builder = Nokogiri::XML::Builder.with(parent_node) do |xml|
|
139
139
|
new_values.each do |builder_new_value|
|
140
|
-
builder_new_value.gsub
|
140
|
+
builder_new_value = builder_new_value.gsub(/'/, "\\\\'") # escape any apostrophes in the new value
|
141
141
|
if matchdata = /xml\.@(\w+)/.match(template)
|
142
142
|
parent_node.set_attribute(matchdata[1], builder_new_value)
|
143
143
|
else
|
@@ -27,7 +27,7 @@ describe "OM::XML::TermValueOperators" do
|
|
27
27
|
|
28
28
|
describe ".update_values" do
|
29
29
|
it "should update the xml according to the find_by_terms_and_values in the given hash" do
|
30
|
-
terms_update_hash = {[{":person"=>"0"}, "affiliation"]=>{"0"=>"affiliation1", "1"=>"affiliation2", "2"=>"affiliation3"}, [{:person=>1}, :last_name]=>"Andronicus", [{"person"=>"1"},:first_name]=>["Titus"],[{:person=>1},:role]=>["otherrole1","otherrole2"] }
|
30
|
+
terms_update_hash = {[{":person"=>"0"}, "affiliation"]=>{"0"=>"affiliation1", "1"=>"affiliation2".freeze, "2"=>"affiliation3"}, [{:person=>1}, :last_name]=>"Andronicus", [{"person"=>"1"},:first_name]=>["Titus"],[{:person=>1},:role]=>["otherrole1","otherrole2"] }
|
31
31
|
result = @article.update_values(terms_update_hash)
|
32
32
|
result.should == {"person_0_affiliation"=>{"0"=>"affiliation1", "1"=>"affiliation2", "2"=>"affiliation3"}, "person_1_last_name"=>{"0"=>"Andronicus"},"person_1_first_name"=>{"0"=>"Titus"}, "person_1_role"=>{"0"=>"otherrole1","1"=>"otherrole2"}}
|
33
33
|
person_0_affiliation = @article.find_by_terms({:person=>0}, :affiliation)
|
metadata
CHANGED
@@ -1,110 +1,83 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: om
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.5.2
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 1
|
8
|
-
- 5
|
9
|
-
- 1
|
10
|
-
version: 1.5.1
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Matt Zumwalt
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2012-02-08 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
21
15
|
name: nokogiri
|
22
|
-
|
23
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: &70117103404700 !ruby/object:Gem::Requirement
|
24
17
|
none: false
|
25
|
-
requirements:
|
26
|
-
- -
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
hash: 3
|
29
|
-
segments:
|
30
|
-
- 1
|
31
|
-
- 4
|
32
|
-
- 2
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
33
21
|
version: 1.4.2
|
34
22
|
type: :runtime
|
35
|
-
version_requirements: *id001
|
36
|
-
- !ruby/object:Gem::Dependency
|
37
|
-
name: mediashelf-loggable
|
38
23
|
prerelease: false
|
39
|
-
|
24
|
+
version_requirements: *70117103404700
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: mediashelf-loggable
|
27
|
+
requirement: &70117103404020 !ruby/object:Gem::Requirement
|
40
28
|
none: false
|
41
|
-
requirements:
|
42
|
-
- -
|
43
|
-
- !ruby/object:Gem::Version
|
44
|
-
|
45
|
-
segments:
|
46
|
-
- 0
|
47
|
-
version: "0"
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
48
33
|
type: :runtime
|
49
|
-
version_requirements: *id002
|
50
|
-
- !ruby/object:Gem::Dependency
|
51
|
-
name: rspec
|
52
34
|
prerelease: false
|
53
|
-
|
35
|
+
version_requirements: *70117103404020
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: rspec
|
38
|
+
requirement: &70117103403040 !ruby/object:Gem::Requirement
|
54
39
|
none: false
|
55
|
-
requirements:
|
40
|
+
requirements:
|
56
41
|
- - ~>
|
57
|
-
- !ruby/object:Gem::Version
|
58
|
-
|
59
|
-
segments:
|
60
|
-
- 2
|
61
|
-
- 0
|
62
|
-
version: "2.0"
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '2.0'
|
63
44
|
type: :development
|
64
|
-
version_requirements: *id003
|
65
|
-
- !ruby/object:Gem::Dependency
|
66
|
-
name: mocha
|
67
45
|
prerelease: false
|
68
|
-
|
46
|
+
version_requirements: *70117103403040
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: mocha
|
49
|
+
requirement: &70117103402480 !ruby/object:Gem::Requirement
|
69
50
|
none: false
|
70
|
-
requirements:
|
71
|
-
- -
|
72
|
-
- !ruby/object:Gem::Version
|
73
|
-
hash: 43
|
74
|
-
segments:
|
75
|
-
- 0
|
76
|
-
- 9
|
77
|
-
- 8
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
78
54
|
version: 0.9.8
|
79
55
|
type: :development
|
80
|
-
version_requirements: *id004
|
81
|
-
- !ruby/object:Gem::Dependency
|
82
|
-
name: equivalent-xml
|
83
56
|
prerelease: false
|
84
|
-
|
57
|
+
version_requirements: *70117103402480
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: equivalent-xml
|
60
|
+
requirement: &70117103401760 !ruby/object:Gem::Requirement
|
85
61
|
none: false
|
86
|
-
requirements:
|
87
|
-
- -
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
hash: 31
|
90
|
-
segments:
|
91
|
-
- 0
|
92
|
-
- 2
|
93
|
-
- 4
|
62
|
+
requirements:
|
63
|
+
- - ! '>='
|
64
|
+
- !ruby/object:Gem::Version
|
94
65
|
version: 0.2.4
|
95
66
|
type: :development
|
96
|
-
|
97
|
-
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: *70117103401760
|
69
|
+
description: ! 'OM (Opinionated Metadata): A library to help you tame sprawling XML
|
70
|
+
schemas like MODS. Wraps Nokogiri documents in objects with miscellaneous helper
|
71
|
+
methods for doing things like retrieve generated xpath queries or look up properties
|
72
|
+
based on a simplified DSL'
|
98
73
|
email: matt.zumwalt@yourmediashelf.com
|
99
74
|
executables: []
|
100
|
-
|
101
75
|
extensions: []
|
102
|
-
|
103
|
-
extra_rdoc_files:
|
76
|
+
extra_rdoc_files:
|
104
77
|
- LICENSE
|
105
78
|
- README.rdoc
|
106
79
|
- README.textile
|
107
|
-
files:
|
80
|
+
files:
|
108
81
|
- .document
|
109
82
|
- .gitignore
|
110
83
|
- .rvmrc
|
@@ -170,38 +143,30 @@ files:
|
|
170
143
|
- spec/unit/xml_spec.rb
|
171
144
|
homepage: http://github.com/mediashelf/om
|
172
145
|
licenses: []
|
173
|
-
|
174
146
|
post_install_message:
|
175
147
|
rdoc_options: []
|
176
|
-
|
177
|
-
require_paths:
|
148
|
+
require_paths:
|
178
149
|
- lib
|
179
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
150
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
180
151
|
none: false
|
181
|
-
requirements:
|
182
|
-
- -
|
183
|
-
- !ruby/object:Gem::Version
|
184
|
-
|
185
|
-
|
186
|
-
- 0
|
187
|
-
version: "0"
|
188
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
152
|
+
requirements:
|
153
|
+
- - ! '>='
|
154
|
+
- !ruby/object:Gem::Version
|
155
|
+
version: '0'
|
156
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
189
157
|
none: false
|
190
|
-
requirements:
|
191
|
-
- -
|
192
|
-
- !ruby/object:Gem::Version
|
193
|
-
|
194
|
-
segments:
|
195
|
-
- 0
|
196
|
-
version: "0"
|
158
|
+
requirements:
|
159
|
+
- - ! '>='
|
160
|
+
- !ruby/object:Gem::Version
|
161
|
+
version: '0'
|
197
162
|
requirements: []
|
198
|
-
|
199
163
|
rubyforge_project:
|
200
164
|
rubygems_version: 1.8.15
|
201
165
|
signing_key:
|
202
166
|
specification_version: 3
|
203
|
-
summary:
|
204
|
-
|
167
|
+
summary: ! 'OM (Opinionated Metadata): A library to help you tame sprawling XML schemas
|
168
|
+
like MODS.'
|
169
|
+
test_files:
|
205
170
|
- spec/fixtures/CBF_MODS/ARS0025_016.xml
|
206
171
|
- spec/fixtures/RUBRIC_mods_article_template.xml
|
207
172
|
- spec/fixtures/mods-3-2.xsd
|