onix 0.8.1 → 0.8.2

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,5 +1,8 @@
1
+ v0.8.2 (6th May 2010)
2
+ - fix APAProduct#series and APAProduct#series=
3
+
1
4
  v0.8.1 (5th January 2010)
2
- - Use libxml2's support for transparent entity conversion when reading an ONIX file
5
+ - Use nokogiri's support for transparent entity conversion when reading an ONIX file
3
6
  - Removed entity replacement from ONIX::Normaliser
4
7
  - the external dependency on sed made me uncomfortable, and it wasn't really
5
8
  necessary now that nokogiri can do it for us
@@ -56,7 +59,7 @@ v0.7.1 (24th June 2009)
56
59
 
57
60
  v0.7.0 (17th June 2009)
58
61
  - try using LibXML for reader again
59
- - retrieving the ONIX version of the input file is currently disabled, as
62
+ - retrieving the ONIX version of the input file is currently disabled, as
60
63
  that seems to be the source of our instability
61
64
  - Various Ruby 1.9 compatability tweaks
62
65
  - add source file coding declarations. All source files are UTF-8
@@ -9,7 +9,7 @@ module ONIX
9
9
  module Version #:nodoc:
10
10
  Major = 0
11
11
  Minor = 8
12
- Tiny = 1
12
+ Tiny = 2
13
13
 
14
14
  String = [Major, Minor, Tiny].join('.')
15
15
  end
@@ -6,7 +6,6 @@ module ONIX
6
6
  delegate :record_reference, :record_reference=
7
7
  delegate :notification_type, :notification_type=
8
8
  delegate :product_form, :product_form=
9
- delegate :series, :series=
10
9
  delegate :edition, :edition=
11
10
  delegate :number_of_pages, :number_of_pages=
12
11
  delegate :bic_main_subject, :bic_main_subject=
@@ -107,6 +106,20 @@ module ONIX
107
106
  composite.subtitle = str
108
107
  end
109
108
 
109
+ def series
110
+ composite = product.series.first
111
+ composite.andand.title_of_series
112
+ end
113
+
114
+ def series=(val)
115
+ composite = product.series.first
116
+ if composite.nil?
117
+ composite = ONIX::Series.new
118
+ product.series << composite
119
+ end
120
+ composite.title_of_series = val.to_s
121
+ end
122
+
110
123
  # retrieve the current publisher website for this particular product
111
124
  def publisher_website
112
125
  website(2).andand.website_link
@@ -56,6 +56,16 @@ context "ONIX::APAProduct" do
56
56
 
57
57
  end
58
58
 
59
+ context ONIX::APAProduct, "series method" do
60
+ specify "should set the nested series value on the underlying product class" do
61
+ apa = ONIX::APAProduct.new
62
+
63
+ apa.series = "Harry Potter"
64
+ apa.series.should eql("Harry Potter")
65
+ apa.to_xml.to_s.include?("<TitleOfSeries>Harry Potter</TitleOfSeries>").should be_true
66
+ end
67
+ end
68
+
59
69
  context ONIX::APAProduct, "price method" do
60
70
  before(:each) do
61
71
  @data_path = File.join(File.dirname(__FILE__),"..","data")
@@ -3,5 +3,6 @@
3
3
  require 'date'
4
4
  require 'stringio'
5
5
  require 'rubygems'
6
+ gem "activesupport", "<= 2.9.9"
6
7
  $LOAD_PATH.unshift(File.dirname(__FILE__) + '/../lib')
7
8
  require 'onix'
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: onix
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 8
8
+ - 2
9
+ version: 0.8.2
5
10
  platform: ruby
6
11
  authors:
7
12
  - James Healy
@@ -9,39 +14,62 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2010-01-05 00:00:00 +11:00
17
+ date: 2010-05-06 00:00:00 +10:00
13
18
  default_executable:
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: roxml
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
20
24
  requirements:
21
25
  - - ">="
22
26
  - !ruby/object:Gem::Version
27
+ segments:
28
+ - 3
29
+ - 1
30
+ - 1
23
31
  version: 3.1.1
24
- version:
32
+ type: :runtime
33
+ version_requirements: *id001
25
34
  - !ruby/object:Gem::Dependency
26
35
  name: andand
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
30
38
  requirements:
31
39
  - - ">="
32
40
  - !ruby/object:Gem::Version
41
+ segments:
42
+ - 0
33
43
  version: "0"
34
- version:
44
+ type: :runtime
45
+ version_requirements: *id002
35
46
  - !ruby/object:Gem::Dependency
36
47
  name: nokogiri
37
- type: :runtime
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
48
+ prerelease: false
49
+ requirement: &id003 !ruby/object:Gem::Requirement
40
50
  requirements:
41
51
  - - ">="
42
52
  - !ruby/object:Gem::Version
53
+ segments:
54
+ - 1
55
+ - 4
43
56
  version: "1.4"
44
- version:
57
+ type: :runtime
58
+ version_requirements: *id003
59
+ - !ruby/object:Gem::Dependency
60
+ name: activesupport
61
+ prerelease: false
62
+ requirement: &id004 !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - <=
65
+ - !ruby/object:Gem::Version
66
+ segments:
67
+ - 2
68
+ - 9
69
+ - 9
70
+ version: 2.9.9
71
+ type: :runtime
72
+ version_requirements: *id004
45
73
  description: A convient mapping between ruby objects and the ONIX XML specification
46
74
  email: jimmy@deefa.com
47
75
  executables: []
@@ -164,18 +192,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
164
192
  requirements:
165
193
  - - ">="
166
194
  - !ruby/object:Gem::Version
195
+ segments:
196
+ - 0
167
197
  version: "0"
168
- version:
169
198
  required_rubygems_version: !ruby/object:Gem::Requirement
170
199
  requirements:
171
200
  - - ">="
172
201
  - !ruby/object:Gem::Version
202
+ segments:
203
+ - 0
173
204
  version: "0"
174
- version:
175
205
  requirements: []
176
206
 
177
207
  rubyforge_project: rbook
178
- rubygems_version: 1.3.5
208
+ rubygems_version: 1.3.6
179
209
  signing_key:
180
210
  specification_version: 3
181
211
  summary: A convient mapping between ruby objects and the ONIX XML specification