gbip 0.8.2 → 0.8.3

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,3 +1,9 @@
1
+ v0.8.3 (19th November 2010)
2
+ - No functional changes
3
+ - updated to use bundler to manage the load path during development
4
+ - switch from depending on the deprecated rbook-isbn gem to the
5
+ isbn10 and ean13 gems
6
+
1
7
  v0.8.2 (25th July 2009)
2
8
  - Add GBIP::Title#to_hash()
3
9
 
data/Rakefile CHANGED
@@ -1,48 +1,20 @@
1
+ require "rubygems"
2
+ require "bundler"
3
+ Bundler.setup
4
+
1
5
  require 'rake'
2
- require 'rake/clean'
3
6
  require 'rake/rdoctask'
4
7
  require 'rake/testtask'
5
- require "rake/gempackagetask"
6
- require 'spec/rake/spectask'
7
-
8
- PKG_VERSION = "0.8.2"
9
- PKG_NAME = "gbip"
10
- PKG_FILE_NAME = "#{PKG_NAME}-#{PKG_VERSION}"
11
- RUBYFORGE_PROJECT = 'rbook'
12
- RUBYFORGE_USER = 'yob'
13
-
14
- CLEAN.include "**/.*.sw*"
8
+ require 'rspec/core/rake_task'
15
9
 
16
10
  desc "Default Task"
17
11
  task :default => [ :spec ]
18
12
 
19
- desc "Cruise Control Tasks"
20
- task :cruise => [ :spec, :spec_report, :doc ]
21
-
22
13
  # run all rspecs
23
14
  desc "Run all rspec files"
24
- Spec::Rake::SpecTask.new("spec") do |t|
25
- t.spec_files = FileList['specs/**/*.rb']
26
- t.rcov = true
27
- t.rcov_dir = (ENV['CC_BUILD_ARTIFACTS'] || 'doc') + "/rcov"
28
- t.rcov_opts = ["--exclude","spec.*\.rb"]
29
- end
30
-
31
- # generate specdocs
32
- desc "Generate Specdocs"
33
- Spec::Rake::SpecTask.new("specdocs") do |t|
34
- t.spec_files = FileList['specs/**/*.rb']
35
- t.spec_opts = ["--format", "rdoc"]
36
- t.out = (ENV['CC_BUILD_ARTIFACTS'] || 'doc') + '/specdoc.rd'
37
- end
38
-
39
- # generate failing spec report
40
- desc "Generate failing spec report"
41
- Spec::Rake::SpecTask.new("spec_report") do |t|
42
- t.spec_files = FileList['specs/**/*.rb']
43
- t.spec_opts = ["--format", "html", "--diff"]
44
- t.out = (ENV['CC_BUILD_ARTIFACTS'] || 'doc') + '/spec_report.html'
45
- t.fail_on_error = false
15
+ RSpec::Core::RakeTask.new("spec") do |t|
16
+ t.rspec_opts = ["--color", "--format progress"]
17
+ t.ruby_opts = "-w"
46
18
  end
47
19
 
48
20
  # Genereate the RDoc documentation
@@ -57,35 +29,3 @@ Rake::RDocTask.new("doc") do |rdoc|
57
29
  rdoc.rdoc_files.include('lib/**/*.rb')
58
30
  rdoc.options << "--inline-source"
59
31
  end
60
-
61
- spec = Gem::Specification.new do |spec|
62
- spec.name = PKG_NAME
63
- spec.version = PKG_VERSION
64
- spec.platform = Gem::Platform::RUBY
65
- spec.summary = "A library for access the globalbooksinprint.com API"
66
- spec.files = Dir.glob("{examples,lib,specs}/**/**/*") +
67
- ["Rakefile", "CHANGELOG"]
68
-
69
- spec.require_path = "lib"
70
- spec.test_files = Dir[ "specs/**/*.rb" ]
71
- spec.has_rdoc = true
72
- spec.extra_rdoc_files = %w{README COPYING LICENSE CHANGELOG}
73
- spec.rdoc_options << '--title' << 'gbip Documentation' <<
74
- '--main' << 'README' << '-q'
75
- spec.add_dependency('rbook-isbn', '>= 1.0')
76
- spec.author = "James Healy"
77
- spec.email = "jimmy@deefa.com"
78
- spec.rubyforge_project = "rbook"
79
- spec.homepage = "http://rbook.rubyforge.org/"
80
- spec.description = <<END_DESC
81
- gbip is a small library to interact with the
82
- globalbooksinprint.com API. The API is based
83
- on raw TCP sockets.
84
- END_DESC
85
- end
86
-
87
- desc "Generate a gem for rbook"
88
- Rake::GemPackageTask.new(spec) do |pkg|
89
- pkg.need_tar = true
90
- end
91
-
@@ -12,4 +12,3 @@ gbip = GBIP::POS.new("username", "password")
12
12
  puts gbip.find(:first, "0732282721").to_yaml
13
13
  #puts gbip.find(:first, "0091835135").to_yaml
14
14
  #puts gbip.find(:first, "1741146712").to_yaml
15
-
@@ -1,14 +1,11 @@
1
- $LOAD_PATH.unshift(File.dirname(__FILE__) + "/../")
1
+ require 'isbn10'
2
+ require 'ean13'
2
3
 
3
4
  # load the files that form this library
4
5
  require 'gbip/pos'
5
6
  require 'gbip/title'
6
7
  require 'gbip/warehouse'
7
8
 
8
- # load rubygems
9
- require 'rubygems'
10
- require 'rbook/isbn'
11
-
12
9
  # Ruby classes for searching the globalbooksinprint.com API. This is a
13
10
  # commercial service and requires a registered account to access. More
14
11
  # information on the service can be found at the website.
@@ -5,7 +5,7 @@ require 'timeout'
5
5
  module GBIP
6
6
 
7
7
  # Provides easy access to the globalbooksinprint.com search API.
8
- # RBook::GBIP has basic usage examples.
8
+ # docs for GBIP has basic usage examples.
9
9
  class POS
10
10
 
11
11
  # don't think we really need these
@@ -36,8 +36,8 @@ module GBIP
36
36
 
37
37
  options = {:timeout => 10}.merge(options)
38
38
 
39
- isbn = RBook::ISBN.convert_to_isbn13(isbn.to_s) || isbn.to_s
40
- return default_return unless RBook::ISBN.valid_isbn13?(isbn)
39
+ isbn = ISBN10.new(isbn.to_s).to_ean || isbn.to_s
40
+ return default_return unless EAN13.valid?(isbn)
41
41
 
42
42
  request_format = "POS"
43
43
  account_type = "3"
@@ -20,7 +20,7 @@ module GBIP
20
20
 
21
21
  self.market = arr[2].strip
22
22
  self.title = arr[3].strip
23
- self.isbn = RBook::ISBN.convert_to_isbn13(arr[4].strip) || arr[4].strip
23
+ self.isbn = ISBN10.new(arr[4].strip).to_ean || arr[4].strip
24
24
  self.binding = arr[5].strip
25
25
  self.status = arr[6].strip
26
26
  self.edition = arr[7].strip
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(File.dirname(__FILE__) + '/../lib')
3
3
  require 'gbip'
4
4
  require File.dirname(__FILE__) + "/spec_helper"
5
5
 
6
- context "A new POS object" do
6
+ describe "A new POS object" do
7
7
 
8
8
  before(:all) do
9
9
  @username = "user"
@@ -16,7 +16,7 @@ context "A new POS object" do
16
16
  # :first searches
17
17
  #####################
18
18
 
19
- specify "should raise an exception when an invalid request is made" do
19
+ it "should raise an exception when an invalid request is made" do
20
20
  # Mock TCPSocket to return an invalid request error code
21
21
  data = File.read(File.dirname(__FILE__) + "/responses/invalid_account.txt").strip
22
22
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -26,7 +26,7 @@ context "A new POS object" do
26
26
  lambda { pos.find(:first, @isbn10) }.should raise_error(GBIP::InvalidRequestError)
27
27
  end
28
28
 
29
- specify "should raise an exception when an invalid username or password is supplied" do
29
+ it "should raise an exception when an invalid username or password is supplied" do
30
30
  # Mock TCPSocket to return an invalid login error code
31
31
  data = File.read(File.dirname(__FILE__) + "/responses/invalid_login.txt").strip
32
32
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -36,7 +36,7 @@ context "A new POS object" do
36
36
  lambda { pos.find(:first, @isbn10) }.should raise_error(GBIP::InvalidLoginError)
37
37
  end
38
38
 
39
- specify "should raise an exception when an bad data is requested" do
39
+ it "should raise an exception when an bad data is requested" do
40
40
  # Mock TCPSocket to return a bad data error code
41
41
  data = File.read(File.dirname(__FILE__) + "/responses/invalid_bad_data.txt").strip
42
42
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -46,7 +46,7 @@ context "A new POS object" do
46
46
  lambda { pos.find(:first, @isbn10) }.should raise_error(GBIP::InvalidRequestError)
47
47
  end
48
48
 
49
- specify "should raise an exception when an invalid request version is used" do
49
+ it "should raise an exception when an invalid request version is used" do
50
50
  # Mock TCPSocket to return an invalid request version error code
51
51
  data = File.read(File.dirname(__FILE__) + "/responses/invalid_request.txt").strip
52
52
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -56,7 +56,7 @@ context "A new POS object" do
56
56
  lambda { pos.find(:first, @isbn10) }.should raise_error(GBIP::InvalidRequestError)
57
57
  end
58
58
 
59
- specify "should raise an exception when a the GBIP API system is unavailable" do
59
+ it "should raise an exception when a the GBIP API system is unavailable" do
60
60
  # Mock TCPSocket to return a system unavailable error code
61
61
  data = File.read(File.dirname(__FILE__) + "/responses/invalid_system_unavailable.txt").strip
62
62
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -66,7 +66,7 @@ context "A new POS object" do
66
66
  lambda { pos.find(:first, @isbn10) }.should raise_error(GBIP::SystemUnavailableError)
67
67
  end
68
68
 
69
- specify "should return a GBIP::Title object when queried for a single valid ISBN10" do
69
+ it "should return a GBIP::Title object when queried for a single valid ISBN10" do
70
70
  # Mock TCPSocket to return a single matching title
71
71
  data = File.read(File.dirname(__FILE__) + "/responses/single_result.txt").strip
72
72
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -82,7 +82,7 @@ context "A new POS object" do
82
82
  socket.should have_received(:print)
83
83
  end
84
84
 
85
- specify "should return a GBIP::Title object when queried for a single valid ISBN13" do
85
+ it "should return a GBIP::Title object when queried for a single valid ISBN13" do
86
86
  # Mock TCPSocket to return a single matching title
87
87
  data = File.read(File.dirname(__FILE__) + "/responses/single_result.txt").strip
88
88
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -96,7 +96,7 @@ context "A new POS object" do
96
96
  socket.should have_received(:print)
97
97
  end
98
98
 
99
- specify "should return a GBIP::Title object when the response contains an extra #" do
99
+ it "should return a GBIP::Title object when the response contains an extra #" do
100
100
  # Mock TCPSocket to return a single matching title that uses a # for its currency
101
101
  # sign, as well as a record seperator
102
102
  data = File.read(File.dirname(__FILE__) + "/responses/single_result2.txt").strip
@@ -109,7 +109,7 @@ context "A new POS object" do
109
109
  result.title.should eql("Pro EDI in BizTalk Server 2006 R2:Electronic Document Interchange Solutions")
110
110
  end
111
111
 
112
- specify "should return a GBIP::Title object when querying for a single valid ISBN10 that has no warehouse data" do
112
+ it "should return a GBIP::Title object when querying for a single valid ISBN10 that has no warehouse data" do
113
113
  # Mock TCPSocket to return a single matching title that lists no warehouses
114
114
  data = File.read(File.dirname(__FILE__) + "/responses/no_warehouses.txt").strip
115
115
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -121,7 +121,7 @@ context "A new POS object" do
121
121
  result.warehouses.should be_empty
122
122
  end
123
123
 
124
- specify "should return nil when a single ISBN10 not recognised by GBIP is requested" do
124
+ it "should return nil when a single ISBN10 not recognised by GBIP is requested" do
125
125
  # Mock TCPSocket to return a valid response with no matching titles
126
126
  data = File.read(File.dirname(__FILE__) + "/responses/no_result.txt").strip
127
127
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -132,7 +132,7 @@ context "A new POS object" do
132
132
  result.should eql(nil)
133
133
  end
134
134
 
135
- specify "should return nil when a single ISBN13 not recognised by GBIP is requested" do
135
+ it "should return nil when a single ISBN13 not recognised by GBIP is requested" do
136
136
  # Mock TCPSocket to return a valid response with no matching titles
137
137
  data = File.read(File.dirname(__FILE__) + "/responses/no_result.txt").strip
138
138
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -143,7 +143,7 @@ context "A new POS object" do
143
143
  result.should eql(nil)
144
144
  end
145
145
 
146
- specify "should return nil when any object is supplied as an ISBN when searching for :first" do
146
+ it "should return nil when any object is supplied as an ISBN when searching for :first" do
147
147
  pos = GBIP::POS.new(@username, @password)
148
148
  result = pos.find(:first, nil)
149
149
  result.should eql(nil)
@@ -155,7 +155,7 @@ context "A new POS object" do
155
155
  result.should eql(nil)
156
156
  end
157
157
 
158
- specify "should perform a successful query if the ISBN is provided as a number" do
158
+ it "should perform a successful query if the ISBN is provided as a number" do
159
159
  # Mock TCPSocket to return a valid response with no matching titles
160
160
  data = File.read(File.dirname(__FILE__) + "/responses/single_result.txt").strip
161
161
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -166,7 +166,7 @@ context "A new POS object" do
166
166
  result.should be_a_kind_of(GBIP::Title)
167
167
  end
168
168
 
169
- specify "should raise an exception if no reponse is received in a certain amount of time" do
169
+ it "should raise an exception if no reponse is received in a certain amount of time" do
170
170
  # Mock TCPSocket to take 5 seconds to generate a response
171
171
  socket = TCPSocket.stub_instance(:print => true, :close => true)
172
172
  socket.stub_method(:gets) do
@@ -181,7 +181,7 @@ context "A new POS object" do
181
181
  #####################
182
182
  # :all searches
183
183
  #####################
184
- specify "should return a non-empty Array when queried for a single valid ISBN10" do
184
+ it "should return a non-empty Array when queried for a single valid ISBN10" do
185
185
  # Mock TCPSocket to return a valid response with a single result
186
186
  data = File.read(File.dirname(__FILE__) + "/responses/single_result.txt").strip
187
187
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -193,7 +193,7 @@ context "A new POS object" do
193
193
  result.should_not be_empty
194
194
  end
195
195
 
196
- specify "should return a non-empty Array when queried for a single valid ISBN13" do
196
+ it "should return a non-empty Array when queried for a single valid ISBN13" do
197
197
  # Mock TCPSocket to return a valid response with a single result
198
198
  data = File.read(File.dirname(__FILE__) + "/responses/single_result.txt").strip
199
199
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -205,7 +205,7 @@ context "A new POS object" do
205
205
  result.should_not be_empty
206
206
  end
207
207
 
208
- specify "should return an empty Array when a single ISBN10 not recognised by GBIP is requested" do
208
+ it "should return an empty Array when a single ISBN10 not recognised by GBIP is requested" do
209
209
  # Mock TCPSocket to return a valid response with no matches
210
210
  data = File.read(File.dirname(__FILE__) + "/responses/no_result.txt").strip
211
211
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -217,7 +217,7 @@ context "A new POS object" do
217
217
  result.should be_empty
218
218
  end
219
219
 
220
- specify "should return an empty Array when a single ISBN13 not recognised by GBIP is requested" do
220
+ it "should return an empty Array when a single ISBN13 not recognised by GBIP is requested" do
221
221
  # Mock TCPSocket to return a valid response with no matches
222
222
  data = File.read(File.dirname(__FILE__) + "/responses/no_result.txt").strip
223
223
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -229,7 +229,7 @@ context "A new POS object" do
229
229
  result.should be_empty
230
230
  end
231
231
 
232
- specify "should return an Array with multiple items when a query returns multiple matches" do
232
+ it "should return an Array with multiple items when a query returns multiple matches" do
233
233
  # Mock TCPSocket to return a valid response with no matches
234
234
  data = File.read(File.dirname(__FILE__) + "/responses/multiple_response.txt").strip
235
235
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -241,7 +241,7 @@ context "A new POS object" do
241
241
  result.size.should eql(3)
242
242
  end
243
243
 
244
- specify "should return an empty array when any object is supplied as an ISBN when searching for :all" do
244
+ it "should return an empty array when any object is supplied as an ISBN when searching for :all" do
245
245
  pos = GBIP::POS.new(@username, @password)
246
246
  result = pos.find(:all, nil)
247
247
  result.should be_a_kind_of(Array)
@@ -256,7 +256,7 @@ context "A new POS object" do
256
256
  result.should be_empty
257
257
  end
258
258
 
259
- specify "should perform a successful query if the ISBN is provided as a number to an :all search" do
259
+ it "should perform a successful query if the ISBN is provided as a number to an :all search" do
260
260
  # Mock TCPSocket to return a valid response with a single result
261
261
  data = File.read(File.dirname(__FILE__) + "/responses/single_result.txt").strip
262
262
  socket = TCPSocket.stub_instance(:print => true, :close => true, :gets => data)
@@ -271,7 +271,7 @@ context "A new POS object" do
271
271
  #####################
272
272
  # invalid searches
273
273
  #####################
274
- specify "should raise an exception when an invalid search type is supplied" do
274
+ it "should raise an exception when an invalid search type is supplied" do
275
275
  pos = GBIP::POS.new(@username, @password)
276
276
  lambda { pos.find(nil, @isbn10) }.should raise_error(ArgumentError)
277
277
  lambda { pos.find(:last, @isbn10) }.should raise_error(ArgumentError)
@@ -1,5 +1,9 @@
1
+ require "rubygems"
2
+ require "bundler"
3
+ Bundler.setup
4
+
1
5
  require 'not_a_mock'
2
6
 
3
- Spec::Runner.configure do |config|
7
+ RSpec.configure do |config|
4
8
  config.mock_with NotAMock::RspecMockFrameworkAdapter
5
9
  end
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gbip
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.2
4
+ hash: 57
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 8
9
+ - 3
10
+ version: 0.8.3
5
11
  platform: ruby
6
12
  authors:
7
13
  - James Healy
@@ -9,20 +15,85 @@ autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
17
 
12
- date: 2009-07-25 00:00:00 +10:00
18
+ date: 2010-11-19 00:00:00 -05:00
13
19
  default_executable:
14
20
  dependencies:
15
21
  - !ruby/object:Gem::Dependency
16
- name: rbook-isbn
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ name: rake
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
20
26
  requirements:
21
27
  - - ">="
22
28
  - !ruby/object:Gem::Version
23
- version: "1.0"
24
- version:
25
- description: " gbip is a small library to interact with the\n globalbooksinprint.com API. The API is based\n on raw TCP sockets.\n"
29
+ hash: 3
30
+ segments:
31
+ - 0
32
+ version: "0"
33
+ type: :development
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: rspec
37
+ prerelease: false
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ hash: 1
44
+ segments:
45
+ - 2
46
+ - 1
47
+ version: "2.1"
48
+ type: :development
49
+ version_requirements: *id002
50
+ - !ruby/object:Gem::Dependency
51
+ name: not_a_mock
52
+ prerelease: false
53
+ requirement: &id003 !ruby/object:Gem::Requirement
54
+ none: false
55
+ requirements:
56
+ - - ~>
57
+ - !ruby/object:Gem::Version
58
+ hash: 21
59
+ segments:
60
+ - 1
61
+ - 0
62
+ - 1
63
+ version: 1.0.1
64
+ type: :development
65
+ version_requirements: *id003
66
+ - !ruby/object:Gem::Dependency
67
+ name: isbn10
68
+ prerelease: false
69
+ requirement: &id004 !ruby/object:Gem::Requirement
70
+ none: false
71
+ requirements:
72
+ - - ~>
73
+ - !ruby/object:Gem::Version
74
+ hash: 11
75
+ segments:
76
+ - 1
77
+ - 2
78
+ version: "1.2"
79
+ type: :runtime
80
+ version_requirements: *id004
81
+ - !ruby/object:Gem::Dependency
82
+ name: ean13
83
+ prerelease: false
84
+ requirement: &id005 !ruby/object:Gem::Requirement
85
+ none: false
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ hash: 7
90
+ segments:
91
+ - 1
92
+ - 4
93
+ version: "1.4"
94
+ type: :runtime
95
+ version_requirements: *id005
96
+ description: " gbip is a small library to interact with the\n globalbooksinprint.com API. The API is based\n on raw TCP sockets, none of this fancy HTTP stuff.\n"
26
97
  email: jimmy@deefa.com
27
98
  executables: []
28
99
 
@@ -35,29 +106,19 @@ extra_rdoc_files:
35
106
  - CHANGELOG
36
107
  files:
37
108
  - examples/gbip.rb
38
- - lib/gbip.rb
39
- - lib/gbip/pos.rb
40
109
  - lib/gbip/title.rb
110
+ - lib/gbip/pos.rb
41
111
  - lib/gbip/warehouse.rb
42
- - specs/pos_class_spec.rb
43
- - specs/responses/invalid_login.txt
44
- - specs/responses/no_result.txt
45
- - specs/responses/no_warehouses.txt
46
- - specs/responses/single_result.txt
47
- - specs/responses/single_result2.txt
48
- - specs/responses/invalid_account.txt
49
- - specs/responses/invalid_bad_data.txt
50
- - specs/responses/invalid_request.txt
51
- - specs/responses/invalid_system_unavailable.txt
52
- - specs/responses/multiple_response.txt
53
- - specs/spec_helper.rb
112
+ - lib/gbip.rb
54
113
  - Rakefile
55
114
  - CHANGELOG
56
115
  - README
57
116
  - COPYING
58
117
  - LICENSE
118
+ - spec/spec_helper.rb
119
+ - spec/pos_class_spec.rb
59
120
  has_rdoc: true
60
- homepage: http://rbook.rubyforge.org/
121
+ homepage: https://github.com/yob/gbip/
61
122
  licenses: []
62
123
 
63
124
  post_install_message:
@@ -70,24 +131,30 @@ rdoc_options:
70
131
  require_paths:
71
132
  - lib
72
133
  required_ruby_version: !ruby/object:Gem::Requirement
134
+ none: false
73
135
  requirements:
74
136
  - - ">="
75
137
  - !ruby/object:Gem::Version
138
+ hash: 3
139
+ segments:
140
+ - 0
76
141
  version: "0"
77
- version:
78
142
  required_rubygems_version: !ruby/object:Gem::Requirement
143
+ none: false
79
144
  requirements:
80
145
  - - ">="
81
146
  - !ruby/object:Gem::Version
147
+ hash: 3
148
+ segments:
149
+ - 0
82
150
  version: "0"
83
- version:
84
151
  requirements: []
85
152
 
86
- rubyforge_project: rbook
87
- rubygems_version: 1.3.4
153
+ rubyforge_project:
154
+ rubygems_version: 1.3.7
88
155
  signing_key:
89
156
  specification_version: 3
90
157
  summary: A library for access the globalbooksinprint.com API
91
158
  test_files:
92
- - specs/pos_class_spec.rb
93
- - specs/spec_helper.rb
159
+ - spec/spec_helper.rb
160
+ - spec/pos_class_spec.rb
@@ -1 +0,0 @@
1
- 66
@@ -1 +0,0 @@
1
- 3 rainbowbook 3 # 57073276 1 AUS Hallucinogens and Your Neurons:The Incredibly Disgusting Story 978-0-8239-3391-4 Library Binding Active Record Cefrey, Holly Rosen Publishing Group, Incorporated, The 032000 29.95 UNITED STATES 22896 $ DRUG ABUSE_JUVENILE LITERATURE JUVENILE NONFICTION / Health & Daily Living / Substance Abuse PERSONAL & SOCIAL ISSUES: DRUGS & ADDICTION (CHILDREN'S/YA) ING 1 Ingram Book Company, La Vergne, TN Available for order 0 06/10/2009# 51552044 1 USA Hallucinogens and Your Neurons:The Incredibly Disgusting Story 978-0-8239-3391-4 Library Binding Active Record Cefrey, Holly Rosen Publishing Group, Incorporated, The 012005 25.25 UNITED STATES 22896 $ DRUG ABUSE_JUVENILE LITERATURE JUVENILE NONFICTION / Health & Daily Living / Substance Abuse DRUG ABUSE PERSONAL & SOCIAL ISSUES: DRUGS & ADDICTION (CHILDREN'S/YA) ING 1 Ingram Book Company, La Vergne, TN Available for order 0 06/10/2009# 53231792 1 CAN Hallucinogens and Your Neurons:The Incredibly Disgusting Story 978-0-8239-3391-4 Library Binding Active Record Cefrey, Holly Rosen Publishing Group, Incorporated, The 2000 28.45 UNITED STATES 22896 $ DRUG ABUSE_JUVENILE LITERATURE JUVENILE NONFICTION / Health & Daily Living / Substance Abuse PERSONAL & SOCIAL ISSUES: DRUGS & ADDICTION (CHILDREN'S/YA) ING 1 Ingram Book Company, La Vergne, TN Available for order 0 06/10/2009
@@ -1 +0,0 @@
1
- 3 rainbowbook 0 # 3
@@ -1 +0,0 @@
1
- 3 rainbowbook 3 # 64970973 1 AUS Roar of the Lion 978-0-7322-8272-1 UK-Trade Paper Out of Print Coates, Frank HarperCollins Publishers Australia 042007 32.99 AUSTRALIA 402956 $ FICTION FICTION / General FICTION & RELATED ITEMS 0
@@ -1 +0,0 @@
1
- 3 rainbowbook 3 # 63006879 1 USA Affluenza:When Too Much Is Never Enough 978-1-74114-671-4 Perfect Active Record Hamilton, Clive Allen & Unwin 042006 14.95 AUSTRALIA 33545 $ CONSUMER STUDIES SOCIAL SCIENCE / General SOCIETY & SOCIAL SCIENCES BDT,BNT,GRD,ING 7 Brodart Company, Williamsport, PA Available for order 0 09/25/2008 Baker & Taylor Books, Bridgewater, NJ 1 10/01/2008 Baker & Taylor Books, Commerce, GA 0 10/01/2008 Baker & Taylor Books, Momence, IL 2 6 10/01/2008 Baker & Taylor Books, Reno, NV 6 10/01/2008 Gardners Books Limited, E. Sussex Available for order 0 10/01/2008 Ingram Book Company, La Vergne, TN Available for order 0 10/01/2008
@@ -1 +0,0 @@
1
- 3 rainbowbook 2 # 66797534 1 GBR Pro EDI in BizTalk Server 2006 R2:Electronic Document Interchange Solutions 978-1-59059-935-8 Trade Paper Active Record Deshev, Hristo Apress L. P. 112007 33.99 UNITED STATES 152887 # DATA TRANSMISSION SYSTEMS COMPUTERS / Data Transmission Systems / General COMPUTER NETWORKING & COMMUNICATIONS BLK,BNT,CLD,ING,POL 8 Blackwell, Lake Oswego, OR In stock 0 10/07/2008 Baker & Taylor Books, Bridgewater, NJ 0 10/12/2008 Baker & Taylor Books, Commerce, GA 5 0 10/12/2008 Baker & Taylor Books, Momence, IL 2 4 10/12/2008 Baker & Taylor Books, Reno, NV 0 10/12/2008 Cromland, Allentown, PA Available for order 0 10/10/2008 Ingram Book Company, La Vergne, TN Available for order 0 10/12/2008 Powells.com, Portland, OR In stock 0 02/01/2008