zumata_v3 0.0.1
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 +7 -0
- data/.gitignore +16 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +20 -0
- data/Rakefile +10 -0
- data/examples/example.rb +127 -0
- data/lib/zumata_v3/client.rb +107 -0
- data/lib/zumata_v3/config.rb +20 -0
- data/lib/zumata_v3/errors.rb +50 -0
- data/lib/zumata_v3/responses.rb +13 -0
- data/lib/zumata_v3/version.rb +3 -0
- data/lib/zumata_v3.rb +8 -0
- data/spec/cassettes/2015-07-24/book_done.yml +32 -0
- data/spec/cassettes/2015-07-24/cancel_cancelled.yml +28 -0
- data/spec/cassettes/2015-07-24/cancel_done.yml +28 -0
- data/spec/cassettes/2015-07-24/cancel_fail.yml +28 -0
- data/spec/cassettes/2015-07-24/get_book_done.yml +30 -0
- data/spec/cassettes/2015-07-24/get_book_fail.yml +28 -0
- data/spec/cassettes/2015-07-24/get_prebook_done.yml +28 -0
- data/spec/cassettes/2015-07-24/get_prebook_fail.yml +28 -0
- data/spec/cassettes/2015-07-24/prebook_done.yml +28 -0
- data/spec/cassettes/2015-07-24/prebook_fail.yml +29 -0
- data/spec/cassettes/2015-07-24/search_by_destination_id_done.yml +82 -0
- data/spec/cassettes/2015-07-24/search_by_destination_id_fail.yml +29 -0
- data/spec/spec_helper.rb +17 -0
- data/spec/zumata_spec.rb +228 -0
- data/zumata_v3.gemspec +30 -0
- metadata +190 -0
data/spec/zumata_spec.rb
ADDED
@@ -0,0 +1,228 @@
|
|
1
|
+
require 'json'
|
2
|
+
require 'spec_helper'
|
3
|
+
require './lib/zumata_v3'
|
4
|
+
|
5
|
+
describe "ZumataV3::HotelClient configuration" do
|
6
|
+
|
7
|
+
it 'will raise an error if api & url are not provided' do
|
8
|
+
|
9
|
+
expect{
|
10
|
+
ZumataV3.configure do |config|
|
11
|
+
config.api_url = nil
|
12
|
+
config.api_key = nil
|
13
|
+
end
|
14
|
+
ZumataV3::HotelClient.new
|
15
|
+
}.to raise_error(ZumataV3::ClientConfigError)
|
16
|
+
|
17
|
+
expect{
|
18
|
+
ZumataV3.configure do |config|
|
19
|
+
config.api_url = ENV["ZUMATA_API_URL"]
|
20
|
+
config.api_key = nil
|
21
|
+
end
|
22
|
+
ZumataV3::HotelClient.new
|
23
|
+
}.to raise_error(ZumataV3::ClientConfigError)
|
24
|
+
|
25
|
+
expect{
|
26
|
+
ZumataV3.configure do |config|
|
27
|
+
config.api_url = nil
|
28
|
+
config.api_key = ENV["ZUMATA_API_KEY"]
|
29
|
+
end
|
30
|
+
ZumataV3::HotelClient.new
|
31
|
+
}.to raise_error(ZumataV3::ClientConfigError)
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
describe "ZumataV3::HotelClient endpoints" do
|
38
|
+
|
39
|
+
$vcr_recorded_check_in_date = "2015-07-24"
|
40
|
+
$vcr_recorded_check_out_date = "2015-07-25"
|
41
|
+
|
42
|
+
before(:each) do
|
43
|
+
|
44
|
+
raise "Tests require environment variable 'ZUMATA_API_KEY' to be configured" unless ENV["ZUMATA_API_KEY"]
|
45
|
+
|
46
|
+
ZumataV3.configure do |config|
|
47
|
+
config.api_url = ENV["ZUMATA_API_URL"]
|
48
|
+
config.api_key = ENV["ZUMATA_API_KEY"]
|
49
|
+
end
|
50
|
+
|
51
|
+
@client = ZumataV3::HotelClient.new
|
52
|
+
end
|
53
|
+
|
54
|
+
describe "search_by_destination_id" do
|
55
|
+
|
56
|
+
it 'returns a successful response if the query is valid', :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/search_by_destination_id_done", :record => :new_episodes } do
|
57
|
+
# note - when recording the cassette this requires a cached search w/ results to exist
|
58
|
+
destination_id = "f75a8cff-c26e-4603-7b45-1b0f8a5aa100" # Singapore
|
59
|
+
results = @client.search_by_destination_id destination_id, {check_in_date: $vcr_recorded_check_in_date, check_out_date: $vcr_recorded_check_out_date}
|
60
|
+
data = JSON.parse(results.body)
|
61
|
+
expect(data).to_not be(nil)
|
62
|
+
expect(data["search"]).to_not be(nil)
|
63
|
+
expect(data["results"]).to_not be(nil)
|
64
|
+
end
|
65
|
+
|
66
|
+
it 'raises an error if invalid inputs are provided', :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/search_by_destination_id_fail", :record => :new_episodes } do
|
67
|
+
destination_id = "invalid"
|
68
|
+
expect{
|
69
|
+
@client.search_by_destination_id destination_id, {check_in_date: $vcr_recorded_check_in_date, check_out_date: $vcr_recorded_check_out_date}
|
70
|
+
}.to raise_error(ZumataV3::BadRequestError)
|
71
|
+
end
|
72
|
+
|
73
|
+
end
|
74
|
+
|
75
|
+
describe "pre_book" do
|
76
|
+
|
77
|
+
def sample_search destination_id="f75a8cff-c26e-4603-7b45-1b0f8a5aa100"
|
78
|
+
return {
|
79
|
+
:destination_id => destination_id,
|
80
|
+
:check_in_date => $vcr_recorded_check_in_date,
|
81
|
+
:check_out_date => $vcr_recorded_check_out_date,
|
82
|
+
:room_count => 1,
|
83
|
+
:adult_count => 2
|
84
|
+
}
|
85
|
+
end
|
86
|
+
|
87
|
+
def sample_package
|
88
|
+
return {
|
89
|
+
:hotel_id => "00d7ed72-2325-4225-5e95-02d340e48fe5",
|
90
|
+
:room_details => {
|
91
|
+
:description => "Superior",
|
92
|
+
:food => 0,
|
93
|
+
:room_type => "Superior",
|
94
|
+
:room_view => "",
|
95
|
+
:beds => {
|
96
|
+
:single => 2
|
97
|
+
}
|
98
|
+
},
|
99
|
+
:booking_key => "39c90b48",
|
100
|
+
:room_rate => 144.92,
|
101
|
+
:room_rate_currency => "USD",
|
102
|
+
:chargeable_rate => 15,
|
103
|
+
:chargeable_rate_currency => "USD"
|
104
|
+
}
|
105
|
+
end
|
106
|
+
|
107
|
+
def sample_config
|
108
|
+
return {
|
109
|
+
:pricing => {
|
110
|
+
:fixed_tolerance => 1
|
111
|
+
},
|
112
|
+
:matching => {
|
113
|
+
:flexible_room_view => true,
|
114
|
+
:flexible_beds => true
|
115
|
+
}
|
116
|
+
}
|
117
|
+
end
|
118
|
+
|
119
|
+
it 'pre-books a package returned from the search request and return booking information' , :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/prebook_done", :record => :new_episodes } do
|
120
|
+
results = @client.pre_book sample_search, sample_package, sample_config
|
121
|
+
data = JSON.parse(results.body)
|
122
|
+
expect(data).to_not be(nil)
|
123
|
+
expect(data["pre_book_id"]).to_not be(nil)
|
124
|
+
expect(data["cancellation_policy"]["remarks"]).to_not be(nil)
|
125
|
+
expect(data["cancellation_policy"]["cancellation_policies"]).to_not be(nil)
|
126
|
+
end
|
127
|
+
|
128
|
+
it 'raises an error if invalid inputs are provided', :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/prebook_fail", :record => :new_episodes } do
|
129
|
+
expect{
|
130
|
+
@client.pre_book sample_search("invalid_destination_id"), sample_package, sample_config
|
131
|
+
}.to raise_error(ZumataV3::BadRequestError)
|
132
|
+
end
|
133
|
+
|
134
|
+
end
|
135
|
+
|
136
|
+
describe "pre_book_details" do
|
137
|
+
|
138
|
+
it 'returns a successful response if the query is valid', :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/get_prebook_done", :record => :new_episodes } do
|
139
|
+
pre_book_id = "2b076a9d-9051-4ab5-57f7-59aaf9d8ce2d"
|
140
|
+
results = @client.pre_book_details pre_book_id
|
141
|
+
data = JSON.parse(results.body)
|
142
|
+
expect(data).to_not be(nil)
|
143
|
+
expect(data["pre_book_id"]).to_not be(nil)
|
144
|
+
end
|
145
|
+
|
146
|
+
it 'raises an error if pre-book id provided is invalid', :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/get_prebook_fail", :record => :new_episodes } do
|
147
|
+
pre_book_id = "invalid"
|
148
|
+
expect{
|
149
|
+
results = @client.pre_book_details pre_book_id
|
150
|
+
}.to raise_error(ZumataV3::NotFoundError)
|
151
|
+
end
|
152
|
+
|
153
|
+
end
|
154
|
+
|
155
|
+
describe "book_by_credit" do
|
156
|
+
|
157
|
+
def sample_guest
|
158
|
+
return {
|
159
|
+
:salutation => "Mr.",
|
160
|
+
:first_name => "Charlie",
|
161
|
+
:last_name => "Smith",
|
162
|
+
:email => "charlie.smith@zumata.com",
|
163
|
+
:city => "Montreal",
|
164
|
+
:state => "Quebec",
|
165
|
+
:street => "123 Outtamy way",
|
166
|
+
:postal_code => "H3H0H0",
|
167
|
+
:country => "Canada",
|
168
|
+
:room_remarks => "3 carpets please",
|
169
|
+
:nationality => "Canadian",
|
170
|
+
:contact_no => "+1 514 555-1234",
|
171
|
+
}
|
172
|
+
end
|
173
|
+
|
174
|
+
it 'books a package after a pre-booking request has been made (by credit) and return client reference', :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/book_done", :record => :new_episodes } do
|
175
|
+
pre_book_id = "2b076a9d-9051-4ab5-57f7-59aaf9d8ce2d"
|
176
|
+
results = @client.book_by_credit sample_guest, pre_book_id, {affiliate_key: ""}
|
177
|
+
data = JSON.parse(results.body)
|
178
|
+
expect(data).to_not be(nil)
|
179
|
+
expect(data["reference"]).not_to eq(nil)
|
180
|
+
end
|
181
|
+
|
182
|
+
end
|
183
|
+
|
184
|
+
describe "booking_status" do
|
185
|
+
|
186
|
+
it 'returns a successful response if the reference id is valid', :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/get_book_done", :record => :new_episodes } do
|
187
|
+
reference = "cc7aa5e9-4cf4-436d-619d-29b7fd992c27"
|
188
|
+
results = @client.booking_status reference
|
189
|
+
data = JSON.parse(results.body)
|
190
|
+
expect(data).to_not be(nil)
|
191
|
+
expect(data["client_reference"]).not_to eq(nil)
|
192
|
+
end
|
193
|
+
|
194
|
+
it 'raises an error if reference id provided is invalid', :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/get_book_fail", :record => :new_episodes } do
|
195
|
+
reference = "invalid"
|
196
|
+
expect{
|
197
|
+
results = @client.booking_status reference
|
198
|
+
}.to raise_error(ZumataV3::NotFoundError)
|
199
|
+
end
|
200
|
+
|
201
|
+
end
|
202
|
+
|
203
|
+
describe "cancel" do
|
204
|
+
|
205
|
+
it "returns a successful response if the reference id is valid", :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/cancel_done", :record => :new_episodes } do
|
206
|
+
reference = "cc7aa5e9-4cf4-436d-619d-29b7fd992c27"
|
207
|
+
results = @client.cancel reference
|
208
|
+
data = JSON.parse(results.body)
|
209
|
+
expect(data).to_not be(nil)
|
210
|
+
end
|
211
|
+
|
212
|
+
it "raise an error if reference id provided is already cancelled", :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/cancel_cancelled", :record => :new_episodes } do
|
213
|
+
reference = "cc7aa5e9-4cf4-436d-619d-29b7fd992c27"
|
214
|
+
expect{
|
215
|
+
results = @client.cancel reference
|
216
|
+
}.to raise_error(ZumataV3::UnprocessableEntityError)
|
217
|
+
end
|
218
|
+
|
219
|
+
it "raise an error if reference id provided is invalid", :vcr => { :cassette_name => "#{$vcr_recorded_check_in_date}/cancel_fail", :record => :new_episodes } do
|
220
|
+
reference = "invalid"
|
221
|
+
expect{
|
222
|
+
results = @client.cancel reference
|
223
|
+
}.to raise_error(ZumataV3::NotFoundError)
|
224
|
+
end
|
225
|
+
|
226
|
+
end
|
227
|
+
|
228
|
+
end
|
data/zumata_v3.gemspec
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'zumata_v3/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "zumata_v3"
|
8
|
+
spec.version = ZumataV3::VERSION
|
9
|
+
spec.authors = ["Jonathan Gomez", "Martin Koh"]
|
10
|
+
spec.email = ["enquiry@zumata.com"]
|
11
|
+
spec.summary = %q{Client for the Zumata API 3.0}
|
12
|
+
spec.description = %q{Power a hotel website - search hotels, create and manage bookings.}
|
13
|
+
spec.homepage = "https://github.com/Zumata/v3-ruby-client"
|
14
|
+
spec.license = "MIT"
|
15
|
+
|
16
|
+
spec.files = `git ls-files -z`.split("\x0")
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_development_dependency "bundler", "~> 1.6"
|
22
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
23
|
+
spec.add_development_dependency "rspec", "3.1.0"
|
24
|
+
spec.add_development_dependency "awesome_print", "1.2.0"
|
25
|
+
spec.add_development_dependency "vcr", "2.9.3"
|
26
|
+
spec.add_development_dependency "webmock", "1.18.0"
|
27
|
+
|
28
|
+
spec.add_runtime_dependency 'httparty', '~> 0.13', '>= 0.13.1'
|
29
|
+
|
30
|
+
end
|
metadata
ADDED
@@ -0,0 +1,190 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: zumata_v3
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Jonathan Gomez
|
8
|
+
- Martin Koh
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2015-07-28 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: bundler
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - ~>
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '1.6'
|
21
|
+
type: :development
|
22
|
+
prerelease: false
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - ~>
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: '1.6'
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: rake
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - ~>
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: '10.0'
|
35
|
+
type: :development
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - ~>
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: '10.0'
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: rspec
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - '='
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 3.1.0
|
49
|
+
type: :development
|
50
|
+
prerelease: false
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - '='
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 3.1.0
|
56
|
+
- !ruby/object:Gem::Dependency
|
57
|
+
name: awesome_print
|
58
|
+
requirement: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - '='
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: 1.2.0
|
63
|
+
type: :development
|
64
|
+
prerelease: false
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - '='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: 1.2.0
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: vcr
|
72
|
+
requirement: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - '='
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: 2.9.3
|
77
|
+
type: :development
|
78
|
+
prerelease: false
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - '='
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: 2.9.3
|
84
|
+
- !ruby/object:Gem::Dependency
|
85
|
+
name: webmock
|
86
|
+
requirement: !ruby/object:Gem::Requirement
|
87
|
+
requirements:
|
88
|
+
- - '='
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: 1.18.0
|
91
|
+
type: :development
|
92
|
+
prerelease: false
|
93
|
+
version_requirements: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - '='
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: 1.18.0
|
98
|
+
- !ruby/object:Gem::Dependency
|
99
|
+
name: httparty
|
100
|
+
requirement: !ruby/object:Gem::Requirement
|
101
|
+
requirements:
|
102
|
+
- - ~>
|
103
|
+
- !ruby/object:Gem::Version
|
104
|
+
version: '0.13'
|
105
|
+
- - '>='
|
106
|
+
- !ruby/object:Gem::Version
|
107
|
+
version: 0.13.1
|
108
|
+
type: :runtime
|
109
|
+
prerelease: false
|
110
|
+
version_requirements: !ruby/object:Gem::Requirement
|
111
|
+
requirements:
|
112
|
+
- - ~>
|
113
|
+
- !ruby/object:Gem::Version
|
114
|
+
version: '0.13'
|
115
|
+
- - '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 0.13.1
|
118
|
+
description: Power a hotel website - search hotels, create and manage bookings.
|
119
|
+
email:
|
120
|
+
- enquiry@zumata.com
|
121
|
+
executables: []
|
122
|
+
extensions: []
|
123
|
+
extra_rdoc_files: []
|
124
|
+
files:
|
125
|
+
- .gitignore
|
126
|
+
- Gemfile
|
127
|
+
- LICENSE.txt
|
128
|
+
- README.md
|
129
|
+
- Rakefile
|
130
|
+
- examples/example.rb
|
131
|
+
- lib/zumata_v3.rb
|
132
|
+
- lib/zumata_v3/client.rb
|
133
|
+
- lib/zumata_v3/config.rb
|
134
|
+
- lib/zumata_v3/errors.rb
|
135
|
+
- lib/zumata_v3/responses.rb
|
136
|
+
- lib/zumata_v3/version.rb
|
137
|
+
- spec/cassettes/2015-07-24/book_done.yml
|
138
|
+
- spec/cassettes/2015-07-24/cancel_cancelled.yml
|
139
|
+
- spec/cassettes/2015-07-24/cancel_done.yml
|
140
|
+
- spec/cassettes/2015-07-24/cancel_fail.yml
|
141
|
+
- spec/cassettes/2015-07-24/get_book_done.yml
|
142
|
+
- spec/cassettes/2015-07-24/get_book_fail.yml
|
143
|
+
- spec/cassettes/2015-07-24/get_prebook_done.yml
|
144
|
+
- spec/cassettes/2015-07-24/get_prebook_fail.yml
|
145
|
+
- spec/cassettes/2015-07-24/prebook_done.yml
|
146
|
+
- spec/cassettes/2015-07-24/prebook_fail.yml
|
147
|
+
- spec/cassettes/2015-07-24/search_by_destination_id_done.yml
|
148
|
+
- spec/cassettes/2015-07-24/search_by_destination_id_fail.yml
|
149
|
+
- spec/spec_helper.rb
|
150
|
+
- spec/zumata_spec.rb
|
151
|
+
- zumata_v3.gemspec
|
152
|
+
homepage: https://github.com/Zumata/v3-ruby-client
|
153
|
+
licenses:
|
154
|
+
- MIT
|
155
|
+
metadata: {}
|
156
|
+
post_install_message:
|
157
|
+
rdoc_options: []
|
158
|
+
require_paths:
|
159
|
+
- lib
|
160
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
161
|
+
requirements:
|
162
|
+
- - '>='
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: '0'
|
165
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
166
|
+
requirements:
|
167
|
+
- - '>='
|
168
|
+
- !ruby/object:Gem::Version
|
169
|
+
version: '0'
|
170
|
+
requirements: []
|
171
|
+
rubyforge_project:
|
172
|
+
rubygems_version: 2.0.14
|
173
|
+
signing_key:
|
174
|
+
specification_version: 4
|
175
|
+
summary: Client for the Zumata API 3.0
|
176
|
+
test_files:
|
177
|
+
- spec/cassettes/2015-07-24/book_done.yml
|
178
|
+
- spec/cassettes/2015-07-24/cancel_cancelled.yml
|
179
|
+
- spec/cassettes/2015-07-24/cancel_done.yml
|
180
|
+
- spec/cassettes/2015-07-24/cancel_fail.yml
|
181
|
+
- spec/cassettes/2015-07-24/get_book_done.yml
|
182
|
+
- spec/cassettes/2015-07-24/get_book_fail.yml
|
183
|
+
- spec/cassettes/2015-07-24/get_prebook_done.yml
|
184
|
+
- spec/cassettes/2015-07-24/get_prebook_fail.yml
|
185
|
+
- spec/cassettes/2015-07-24/prebook_done.yml
|
186
|
+
- spec/cassettes/2015-07-24/prebook_fail.yml
|
187
|
+
- spec/cassettes/2015-07-24/search_by_destination_id_done.yml
|
188
|
+
- spec/cassettes/2015-07-24/search_by_destination_id_fail.yml
|
189
|
+
- spec/spec_helper.rb
|
190
|
+
- spec/zumata_spec.rb
|