quicktravel_client 3.8.1 → 4.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/.travis.yml +5 -6
- data/CHANGELOG.md +22 -0
- data/gemfiles/rails6.gemfile +8 -0
- data/lib/quick_travel.rb +2 -0
- data/lib/quick_travel/adapter.rb +2 -0
- data/lib/quick_travel/booking.rb +6 -1
- data/lib/quick_travel/cache.rb +8 -1
- data/lib/quick_travel/checkout.rb +3 -2
- data/lib/quick_travel/package.rb +13 -0
- data/lib/quick_travel/party.rb +1 -1
- data/lib/quick_travel/passenger_type.rb +1 -1
- data/lib/quick_travel/vehicle_type.rb +1 -1
- data/lib/quick_travel/version.rb +1 -1
- data/quicktravel_client.gemspec +5 -5
- data/spec/booking_spec.rb +10 -0
- data/spec/discounts_spec.rb +21 -21
- data/spec/package_spec.rb +24 -0
- data/spec/spec_helper.rb +5 -0
- data/spec/support/cassettes/accommodation_reserve.yml +5 -5
- data/spec/support/cassettes/basic_product_scheduled_trips.yml +2 -2
- data/spec/support/cassettes/basic_product_scheduled_trips_multi_sector.yml +2 -2
- data/spec/support/cassettes/basic_product_scheduled_trips_unbookable.yml +2 -2
- data/spec/support/cassettes/booking_update.yml +3 -3
- data/spec/support/cassettes/booking_with_comments.yml +119 -0
- data/spec/support/cassettes/booking_with_nested_attributes.yml +4 -4
- data/spec/support/cassettes/create_reservation_with_booking.yml +2 -2
- data/spec/support/cassettes/package_show.yml +83 -0
- data/spec/support/cassettes/package_show_product_type.yml +80 -0
- data/spec/support/cassettes/price_quote.yml +4 -4
- data/spec/support/coverage_loader.rb +1 -1
- metadata +31 -29
- data/gemfiles/rails4.gemfile +0 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4da663e0f71fad43fdba390dd3734954530fde1b53013e59a8a4053db8b8b016
|
4
|
+
data.tar.gz: 98ade4d08e4d1a5d8dc8177b262f329d29fbbb58662580bded964d107ba61bfd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ff942594f0e30d42f9d4d1f03687ab185fc0085a8fcbc2f7919b778498c87667fc929f802df95150f44468b9aaaa79f3d7de6297fb3cf464fe58bfc1fa381ac
|
7
|
+
data.tar.gz: bad7b656128eeff52372b7b0e420a84c6d18d0b892afd39e112d9a1e3949242f173213e942ba527fcdbec2c0374e5c6d70eaa67c562f098625991fa04934a24e
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.7.1
|
data/.travis.yml
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
language: ruby
|
2
2
|
rvm:
|
3
|
-
- 2.2
|
4
|
-
- 2.3
|
5
|
-
- 2.4
|
6
3
|
- 2.5
|
4
|
+
- 2.6
|
5
|
+
- 2.7
|
7
6
|
before_install:
|
8
|
-
- gem install bundler
|
9
|
-
script: bundle && bundle exec
|
7
|
+
- gem install bundler
|
8
|
+
script: bundle && bundle exec rspec spec
|
10
9
|
gemfile:
|
11
|
-
- gemfiles/rails4.gemfile
|
12
10
|
- gemfiles/rails5.gemfile
|
11
|
+
- gemfiles/rails6.gemfile
|
13
12
|
notifications:
|
14
13
|
email:
|
15
14
|
- support@travellink.com.au
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,28 @@ All notable changes to this project will be documented in this file.
|
|
3
3
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
4
4
|
This changelog adheres to [Keep a CHANGELOG](http://keepachangelog.com/).
|
5
5
|
|
6
|
+
## [4.3.0]
|
7
|
+
### Changed
|
8
|
+
- [TT-8142] Add suitable user-agent header
|
9
|
+
- [TT-8379] Switch to using api/parties endpoint
|
10
|
+
|
11
|
+
## [4.2.0]
|
12
|
+
### Changed
|
13
|
+
- [TT-7969] Update cassettes to work with HttpParty >= 0.18.1
|
14
|
+
- [TT-7912] Update api status endpoint to the new response format
|
15
|
+
|
16
|
+
## [4.1.0]
|
17
|
+
### Added
|
18
|
+
- [TT-7788] Add API namespace to vehicle_types endpoint
|
19
|
+
|
20
|
+
## [4.0.0]
|
21
|
+
- [TT-7385] Update Money dependency, test against Ruby 2.7 / Rails 6
|
22
|
+
|
23
|
+
## [3.9.0]
|
24
|
+
### Added
|
25
|
+
- [DC-3115] Add customer comments method in booking
|
26
|
+
- [DC-2942] Add package class to support quantity based package
|
27
|
+
|
6
28
|
## [3.8.1]
|
7
29
|
### Changed
|
8
30
|
- [DC-3033] Reverse changes in checkout class to fix polipay redirection in EcomEngine
|
data/lib/quick_travel.rb
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
#
|
3
3
|
module QuickTravel
|
4
4
|
require 'active_support' # for .try, etc.
|
5
|
+
require 'money_extensions'
|
5
6
|
|
6
7
|
require 'quick_travel/cache'
|
7
8
|
require 'quick_travel/config'
|
@@ -33,6 +34,7 @@ module QuickTravel
|
|
33
34
|
require 'quick_travel/drop_off_location'
|
34
35
|
require 'quick_travel/drop_off_option'
|
35
36
|
require 'quick_travel/location'
|
37
|
+
require 'quick_travel/package'
|
36
38
|
require 'quick_travel/party'
|
37
39
|
require 'quick_travel/passenger'
|
38
40
|
require 'quick_travel/passenger_type'
|
data/lib/quick_travel/adapter.rb
CHANGED
@@ -214,6 +214,8 @@ module QuickTravel
|
|
214
214
|
http_params[:headers] ||= {}
|
215
215
|
http_params[:headers]['Content-length'] = '0' if http_params[:body].blank?
|
216
216
|
http_params[:headers]['x-api-key'] = QuickTravel.config.access_key
|
217
|
+
http_params[:headers]['user-agent'] = 'quicktravel_client/' + QuickTravel::VERSION;
|
218
|
+
|
217
219
|
expect = http_params.delete(:expect)
|
218
220
|
|
219
221
|
# Use :body instead of :query for put/post.
|
data/lib/quick_travel/booking.rb
CHANGED
@@ -13,7 +13,7 @@ module QuickTravel
|
|
13
13
|
end
|
14
14
|
|
15
15
|
def self.find_by_reference(reference)
|
16
|
-
find_all!("#{api_base}/reference/#{URI.
|
16
|
+
find_all!("#{api_base}/reference/#{URI.encode_www_form_component(reference)}.json").first
|
17
17
|
end
|
18
18
|
|
19
19
|
def documents(regenerate = false)
|
@@ -296,6 +296,11 @@ module QuickTravel
|
|
296
296
|
Encrypt.access_key(@id.to_s)
|
297
297
|
end
|
298
298
|
|
299
|
+
def customer_comments
|
300
|
+
comment = comments.detect{ |comment| comment['comment_type'] == 'customer' }
|
301
|
+
comment.presence.try(:[], 'text') || ''
|
302
|
+
end
|
303
|
+
|
299
304
|
protected
|
300
305
|
|
301
306
|
def reserve(url, options)
|
data/lib/quick_travel/cache.rb
CHANGED
@@ -11,13 +11,20 @@ module QuickTravel
|
|
11
11
|
cache_options ||= {}
|
12
12
|
key = "#{@@namespace}_#{key}" unless cache_options[:disable_namespacing]
|
13
13
|
cached_value = cache_store.read(key)
|
14
|
-
return cached_value unless cached_value
|
14
|
+
return cached_value unless cache_empty?(cached_value)
|
15
15
|
return nil unless block_given?
|
16
16
|
cache_options ||= {}
|
17
17
|
cache_options[:expires_in] = 1.day unless cache_options.key?(:expires_in)
|
18
18
|
yield.tap { |value| cache_store.write(key, value, cache_options) }
|
19
19
|
end
|
20
20
|
|
21
|
+
def self.cache_empty?(cached_value)
|
22
|
+
if cached_value.respond_to?(:body)
|
23
|
+
return cached_value.body.nil? || cached_value.body.empty?
|
24
|
+
end
|
25
|
+
cached_value.nil?
|
26
|
+
end
|
27
|
+
|
21
28
|
def self.delete(key, namespace = true)
|
22
29
|
key = "#{@@namespace}_#{key}" if namespace
|
23
30
|
cache_store.delete(key)
|
@@ -29,10 +29,11 @@ module QuickTravel
|
|
29
29
|
# When complete:
|
30
30
|
# progress: 'completed'
|
31
31
|
#
|
32
|
-
# When failed, status :
|
32
|
+
# When failed, status :ok
|
33
|
+
# successful: false
|
33
34
|
# error: 'Reason for failure'
|
34
35
|
def self.status(id)
|
35
|
-
build_checkout_for { get_and_validate("/api/checkouts/#{id}.json") }
|
36
|
+
build_checkout_for { get_and_validate("/api/checkouts/#{id}.json?v=1") }
|
36
37
|
end
|
37
38
|
|
38
39
|
def self.update(id, data)
|
data/lib/quick_travel/party.rb
CHANGED
@@ -13,7 +13,7 @@ module QuickTravel
|
|
13
13
|
end
|
14
14
|
|
15
15
|
def self.pluralize(count, singular, plural = nil)
|
16
|
-
"#{count || 0} " + ((count == 1
|
16
|
+
"#{count || 0} " + ((count == 1) ? singular : (plural || singular.pluralize))
|
17
17
|
end
|
18
18
|
end
|
19
19
|
end
|
data/lib/quick_travel/version.rb
CHANGED
data/quicktravel_client.gemspec
CHANGED
@@ -16,14 +16,14 @@ Gem::Specification.new do |spec|
|
|
16
16
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
17
17
|
spec.require_paths = ['lib']
|
18
18
|
|
19
|
-
spec.add_dependency 'httparty', '
|
20
|
-
spec.add_dependency '
|
21
|
-
spec.add_dependency 'activesupport', '>= 2.0.0'
|
19
|
+
spec.add_dependency 'httparty', '>= 0.18.1'
|
20
|
+
spec.add_dependency 'activesupport', '>= 5.0.0'
|
22
21
|
spec.add_dependency 'facets'
|
23
|
-
spec.add_dependency 'money', '>=
|
22
|
+
spec.add_dependency 'money', '>= 6.0'
|
23
|
+
spec.add_dependency 'money_extensions', '>= 1.0'
|
24
24
|
spec.add_dependency 'will_paginate'
|
25
25
|
|
26
|
-
spec.add_development_dependency 'bundler', '~>
|
26
|
+
spec.add_development_dependency 'bundler', '~> 2'
|
27
27
|
spec.add_development_dependency 'rake'
|
28
28
|
spec.add_development_dependency 'rspec'
|
29
29
|
spec.add_development_dependency 'rspec-its'
|
data/spec/booking_spec.rb
CHANGED
@@ -207,3 +207,13 @@ describe QuickTravel::Booking, "when booking doesn't exist" do
|
|
207
207
|
end
|
208
208
|
end
|
209
209
|
end
|
210
|
+
|
211
|
+
describe QuickTravel::Booking, "#customer_comments" do
|
212
|
+
let(:booking) { QuickTravel::Booking.find(333536) }
|
213
|
+
|
214
|
+
it 'should return customer comments' do
|
215
|
+
VCR.use_cassette('booking_with_comments') do
|
216
|
+
expect(booking.customer_comments).to eq 'I hate this'
|
217
|
+
end
|
218
|
+
end
|
219
|
+
end
|
data/spec/discounts_spec.rb
CHANGED
@@ -26,9 +26,9 @@ describe 'Booking price_changes' do
|
|
26
26
|
|
27
27
|
specify { expect(price_change.target.type).to eq 'Booking' }
|
28
28
|
specify { expect(price_change.target.id).to eq booking.id }
|
29
|
-
specify { expect(price_change.original_price).to eq 640.00 }
|
30
|
-
specify { expect(price_change.changed_price).to eq 380.00 }
|
31
|
-
specify { expect(price_change.price_change).to eq(-260.00) }
|
29
|
+
specify { expect(price_change.original_price).to eq 640.00.to_money }
|
30
|
+
specify { expect(price_change.changed_price).to eq 380.00.to_money }
|
31
|
+
specify { expect(price_change.price_change).to eq(-260.00.to_money) }
|
32
32
|
specify do
|
33
33
|
expect(price_change.reservation_price_changes.count).to(
|
34
34
|
eq booking.reservations.count)
|
@@ -43,9 +43,9 @@ describe 'Booking price_changes' do
|
|
43
43
|
|
44
44
|
specify { expect(price_change.target.type).to eq 'Reservation' }
|
45
45
|
specify { expect(price_change.target.id).to eq reservation.id }
|
46
|
-
specify { expect(price_change.original_price).to eq 400.00 }
|
47
|
-
specify { expect(price_change.changed_price).to eq 200.00 }
|
48
|
-
specify { expect(price_change.price_change).to eq(-200) }
|
46
|
+
specify { expect(price_change.original_price).to eq 400.00.to_money }
|
47
|
+
specify { expect(price_change.changed_price).to eq 200.00.to_money }
|
48
|
+
specify { expect(price_change.price_change).to eq(-200.to_money) }
|
49
49
|
end
|
50
50
|
|
51
51
|
context 'the total price_change applied on the top level reservation' do
|
@@ -57,9 +57,9 @@ describe 'Booking price_changes' do
|
|
57
57
|
|
58
58
|
specify { expect(price_change.target.type).to eq 'Reservation' }
|
59
59
|
specify { expect(price_change.target.id).to eq reservation.id }
|
60
|
-
specify { expect(price_change.original_price).to eq 640.00 }
|
61
|
-
specify { expect(price_change.changed_price).to eq 380.00 }
|
62
|
-
specify { expect(price_change.price_change).to eq(-260.00) }
|
60
|
+
specify { expect(price_change.original_price).to eq 640.00.to_money }
|
61
|
+
specify { expect(price_change.changed_price).to eq 380.00.to_money }
|
62
|
+
specify { expect(price_change.price_change).to eq(-260.00.to_money) }
|
63
63
|
end
|
64
64
|
|
65
65
|
context 'the price_change applied on the first extra pick' do
|
@@ -71,9 +71,9 @@ describe 'Booking price_changes' do
|
|
71
71
|
|
72
72
|
specify { expect(price_change.target.type).to eq 'Reservation' }
|
73
73
|
specify { expect(price_change.target.id).to eq extra_pick_without_price_change.id }
|
74
|
-
specify { expect(price_change.original_price).to eq 120 }
|
75
|
-
specify { expect(price_change.changed_price).to eq 120 }
|
76
|
-
specify { expect(price_change.price_change).to eq 0 }
|
74
|
+
specify { expect(price_change.original_price).to eq 120.to_money }
|
75
|
+
specify { expect(price_change.changed_price).to eq 120.to_money }
|
76
|
+
specify { expect(price_change.price_change).to eq 0.to_money }
|
77
77
|
end
|
78
78
|
|
79
79
|
context 'the total price_change applied on the first extra pick' do
|
@@ -85,9 +85,9 @@ describe 'Booking price_changes' do
|
|
85
85
|
|
86
86
|
specify { expect(price_change.target.type).to eq 'Reservation' }
|
87
87
|
specify { expect(price_change.target.id).to eq extra_pick_without_price_change.id }
|
88
|
-
specify { expect(price_change.original_price).to eq 120 }
|
89
|
-
specify { expect(price_change.changed_price).to eq 120 }
|
90
|
-
specify { expect(price_change.price_change).to eq 0 }
|
88
|
+
specify { expect(price_change.original_price).to eq 120.to_money }
|
89
|
+
specify { expect(price_change.changed_price).to eq 120.to_money }
|
90
|
+
specify { expect(price_change.price_change).to eq 0.to_money }
|
91
91
|
end
|
92
92
|
|
93
93
|
context 'the price_change applied on second extra pick' do
|
@@ -99,9 +99,9 @@ describe 'Booking price_changes' do
|
|
99
99
|
|
100
100
|
specify { expect(price_change.target.type).to eq 'Reservation' }
|
101
101
|
specify { expect(price_change.target.id).to eq extra_pick_with_price_change.id }
|
102
|
-
specify { expect(price_change.original_price).to eq 120.00 }
|
103
|
-
specify { expect(price_change.changed_price).to eq 60.00 }
|
104
|
-
specify { expect(price_change.price_change).to eq(-60.00) }
|
102
|
+
specify { expect(price_change.original_price).to eq 120.00.to_money }
|
103
|
+
specify { expect(price_change.changed_price).to eq 60.00.to_money }
|
104
|
+
specify { expect(price_change.price_change).to eq(-60.00.to_money) }
|
105
105
|
end
|
106
106
|
|
107
107
|
context 'the total price_change applied on second extra pick' do
|
@@ -113,9 +113,9 @@ describe 'Booking price_changes' do
|
|
113
113
|
|
114
114
|
specify { expect(price_change.target.type).to eq 'Reservation' }
|
115
115
|
specify { expect(price_change.target.id).to eq extra_pick_with_price_change.id }
|
116
|
-
specify { expect(price_change.original_price).to eq 120.00 }
|
117
|
-
specify { expect(price_change.changed_price).to eq 60.00 }
|
118
|
-
specify { expect(price_change.price_change).to eq(-60.00) }
|
116
|
+
specify { expect(price_change.original_price).to eq 120.00.to_money }
|
117
|
+
specify { expect(price_change.changed_price).to eq 60.00.to_money }
|
118
|
+
specify { expect(price_change.price_change).to eq(-60.00.to_money) }
|
119
119
|
end
|
120
120
|
end
|
121
121
|
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'quick_travel/package'
|
3
|
+
|
4
|
+
describe QuickTravel::Package do
|
5
|
+
subject(:package) {
|
6
|
+
VCR.use_cassette('package_show') do
|
7
|
+
QuickTravel::Package.find(464)
|
8
|
+
end
|
9
|
+
}
|
10
|
+
|
11
|
+
its(:name) { should eq 'Swan Valley Gourmet Wine Cruise (SVGWC-0945)' }
|
12
|
+
its(:type) { should eq 'Package' }
|
13
|
+
|
14
|
+
|
15
|
+
context '#product_type' do
|
16
|
+
subject(:property_type) {
|
17
|
+
VCR.use_cassette 'package_show_product_type' do
|
18
|
+
package.product_type
|
19
|
+
end
|
20
|
+
}
|
21
|
+
|
22
|
+
its(:name) { should eq 'Rottnest Packages' }
|
23
|
+
end
|
24
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -27,6 +27,11 @@ end
|
|
27
27
|
require 'quick_travel/connection_error'
|
28
28
|
require 'quick_travel/cache'
|
29
29
|
|
30
|
+
Money.default_currency = Money::Currency.new("AUD")
|
31
|
+
Money.locale_backend = nil
|
32
|
+
Money.default_formatting_rules = { thousands_separator: "," }
|
33
|
+
Money.rounding_mode = BigDecimal::ROUND_HALF_UP
|
34
|
+
|
30
35
|
class HashCache
|
31
36
|
def initialize
|
32
37
|
@cache = {}
|
@@ -5,7 +5,7 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/reservation_for/accommodations/create_or_update.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: reservations
|
8
|
+
string: reservations%5Bresource_id%5D=6&reservations%5Bbed_configuration_id%5D=1&reservations%5Bfirst_travel_date%5D=01%2F03%2F2016&reservations%5Blast_travel_date%5D=02%2F03%2F2016&booking_id=4
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
@@ -54,7 +54,7 @@ http_interactions:
|
|
54
54
|
body:
|
55
55
|
encoding: UTF-8
|
56
56
|
string: ''
|
57
|
-
http_version:
|
57
|
+
http_version:
|
58
58
|
recorded_at: Wed, 21 Mar 2018 04:40:20 GMT
|
59
59
|
- request:
|
60
60
|
method: get
|
@@ -121,7 +121,7 @@ http_interactions:
|
|
121
121
|
Discount Hilton","description":"","display_name":"Test Discount Hilton"}],"package":false,"sub_reservation_depth":0,"extra_pick":null,"child_resource":null,"pending_confirmation":false,"confirmation_request_fields":[],"report_reservation_changes":false,"vendor_pnr":null,"pick_up_information":null,"drop_off_information":null,"vendor_staff":null,"notes_for_vendor":null,"passenger_ids":[],"passenger_splits":[],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{}}],"adjustments_attributes":[],"payments_attributes":[],"payment_types_attributes":[{"id":4,"name":"visa","description":"visa","transaction_fee":"0.0","active":true,"position":3,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":"Visa","payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":5,"name":"master","description":"master","transaction_fee":"0.0","active":true,"position":4,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":7,"name":"PayPal","description":"Payments
|
122
122
|
made via PayPal account","transaction_fee":"0.0","active":true,"position":6,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"paypal","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":10,"name":"Opal
|
123
123
|
Pay","description":"Opal Payments","transaction_fee":"0.0","active":true,"position":9,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"opal_pay","gateway":null,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":false,"creditlink":false,"surchargeable":false}],"issued_tickets_attributes":[]}'
|
124
|
-
http_version:
|
124
|
+
http_version:
|
125
125
|
recorded_at: Wed, 21 Mar 2018 04:40:21 GMT
|
126
126
|
- request:
|
127
127
|
method: get
|
@@ -188,7 +188,7 @@ http_interactions:
|
|
188
188
|
Discount Hilton","description":"","display_name":"Test Discount Hilton"}],"package":false,"sub_reservation_depth":0,"extra_pick":null,"child_resource":null,"pending_confirmation":false,"confirmation_request_fields":[],"report_reservation_changes":false,"vendor_pnr":null,"pick_up_information":null,"drop_off_information":null,"vendor_staff":null,"notes_for_vendor":null,"passenger_ids":[],"passenger_splits":[],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{}}],"adjustments_attributes":[],"payments_attributes":[],"payment_types_attributes":[{"id":4,"name":"visa","description":"visa","transaction_fee":"0.0","active":true,"position":3,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":"Visa","payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":5,"name":"master","description":"master","transaction_fee":"0.0","active":true,"position":4,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":7,"name":"PayPal","description":"Payments
|
189
189
|
made via PayPal account","transaction_fee":"0.0","active":true,"position":6,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"paypal","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":10,"name":"Opal
|
190
190
|
Pay","description":"Opal Payments","transaction_fee":"0.0","active":true,"position":9,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"opal_pay","gateway":null,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":false,"creditlink":false,"surchargeable":false}],"issued_tickets_attributes":[]}'
|
191
|
-
http_version:
|
191
|
+
http_version:
|
192
192
|
recorded_at: Wed, 21 Mar 2018 04:40:21 GMT
|
193
193
|
- request:
|
194
194
|
method: get
|
@@ -249,6 +249,6 @@ http_interactions:
|
|
249
249
|
Hotel - Executive Room","client_type_ids":[],"category":null,"location_ids":[5],"current_description":"\u003cp\u003eA
|
250
250
|
basic studio room\u003c/p\u003e","graphics":[],"graphic_names":[],"property_name":"Hilton
|
251
251
|
Hotel","ticket_template":null,"expiry_days":null}]'
|
252
|
-
http_version:
|
252
|
+
http_version:
|
253
253
|
recorded_at: Wed, 21 Mar 2018 04:40:22 GMT
|
254
254
|
recorded_with: VCR 4.0.0
|
@@ -5,7 +5,7 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/reservation_for/scheduled_trips/find_services_for.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: product_type_id=1&route_id=1&forward
|
8
|
+
string: product_type_id=1&route_id=1&forward%5Bfirst_travel_date%5D=2016-03-01&forward%5Bpassenger_types%5D%5B1%5D=2
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
@@ -64,6 +64,6 @@ http_interactions:
|
|
64
64
|
class=\"money positive\"\u003e$40.00\u003c/span\u003e\u0026nbsp;\u003c/span\u003e","price_breakdown_passengers_in_cents":4000,"price_breakdown_vehicles_in_cents":0,"trip_id":5,"stop_departure_time":"2000-01-01T18:00:00.000Z","stop_arrival_time":"2000-01-01T18:45:00.000Z","from_route_stop_attributes":null,"to_route_stop_attributes":null,"departure_time":"2000-01-01T18:00:00.000Z","arrival_time":"2000-01-01T18:45:00.000Z"},{"product_id":"6","product_id_field":"trip_id","resource_id":1,"resource_class_name_underscore":"ship","product_name_underscore":"ferry","tariff_level_id":1,"service_ids":[14],"first_travel_date":"01-03-2016","last_travel_date":"01-03-2016","time_class":"","exception_type":null,"bookable":true,"reason_unbookable":null,"service_notes":null,"booking_notes":null,"inventory_type_code":"A","price_in_cents":4000,"pre_adjusted_price_in_cents":4000,"total_price_adjustment_in_cents":0,"adjustments":[],"selection_name":"09:00pm
|
65
65
|
- KI Ferry","price_breakdown":"\u003cspan\u003e\u003cstrong\u003ePassengers:\u003c/strong\u003e\u0026nbsp;\u003cspan
|
66
66
|
class=\"money positive\"\u003e$40.00\u003c/span\u003e\u0026nbsp;\u003c/span\u003e","price_breakdown_passengers_in_cents":4000,"price_breakdown_vehicles_in_cents":0,"trip_id":6,"stop_departure_time":"2000-01-01T21:00:00.000Z","stop_arrival_time":"2000-01-01T21:45:00.000Z","from_route_stop_attributes":null,"to_route_stop_attributes":null,"departure_time":"2000-01-01T21:00:00.000Z","arrival_time":"2000-01-01T21:45:00.000Z"}]'
|
67
|
-
http_version:
|
67
|
+
http_version:
|
68
68
|
recorded_at: Wed, 21 Mar 2018 04:40:37 GMT
|
69
69
|
recorded_with: VCR 4.0.0
|
@@ -5,7 +5,7 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/reservation_for/scheduled_trips/find_services_for.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: product_type_id=6&route_id=3&forward
|
8
|
+
string: product_type_id=6&route_id=3&forward%5Bfirst_travel_date%5D=2016-03-01&forward%5Bfrom_route_stop_id%5D=5&forward%5Bto_route_stop_id%5D=14&forward%5Bpassenger_types%5D%5B1%5D=2
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
@@ -64,6 +64,6 @@ http_interactions:
|
|
64
64
|
class=\"money positive\"\u003e$30.00\u003c/span\u003e\u0026nbsp;\u003c/span\u003e","price_breakdown_passengers_in_cents":3000,"price_breakdown_vehicles_in_cents":0,"trip_id":13,"stop_departure_time":"2000-01-01T15:45:00.000Z","stop_arrival_time":"2000-01-01T17:30:00.000Z","from_route_stop_attributes":{"id":5,"inventory_controlled":true,"route_id":3,"position":1,"created_at":null,"updated_at":null,"stop_id":3,"name":"Adelaide
|
65
65
|
Central Bus Station","code":"ACBS"},"to_route_stop_attributes":{"id":14,"inventory_controlled":true,"route_id":3,"position":10,"created_at":null,"updated_at":null,"stop_id":12,"name":"Cape
|
66
66
|
Jervis Ferry Terminal","code":null},"departure_time":"2000-01-01T15:00:00.000Z","arrival_time":"2000-01-01T17:30:00.000Z"}]'
|
67
|
-
http_version:
|
67
|
+
http_version:
|
68
68
|
recorded_at: Wed, 21 Mar 2018 04:40:38 GMT
|
69
69
|
recorded_with: VCR 4.0.0
|
@@ -5,7 +5,7 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/reservation_for/scheduled_trips/find_services_for.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: product_type_id=1&route_id=1&forward
|
8
|
+
string: product_type_id=1&route_id=1&forward%5Bfirst_travel_date%5D=2016-03-03&forward%5Bpassenger_types%5D%5B1%5D=2
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
@@ -56,6 +56,6 @@ http_interactions:
|
|
56
56
|
body:
|
57
57
|
encoding: UTF-8
|
58
58
|
string: "[]"
|
59
|
-
http_version:
|
59
|
+
http_version:
|
60
60
|
recorded_at: Wed, 21 Mar 2018 04:40:37 GMT
|
61
61
|
recorded_with: VCR 4.0.0
|
@@ -5,7 +5,7 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/bookings/3.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: booking
|
8
|
+
string: booking%5Bcustomer_contact_name%5D=John
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
@@ -58,7 +58,7 @@ http_interactions:
|
|
58
58
|
string: '{"id":3,"state":"new","reference":"222226","public_comments":null,"internal_comments":null,"customer_contact_name":"John","customer_contact_phone":null,"customer_contact_mobile":null,"customer_contact_email":null,"currency_iso_code":"AUD","country_id":14,"drop_off_option_id":null,"drop_off_location_id":null,"post_code":null,"referral_code_id":1,"external_identifier":null,"created_at":"2016-01-01T13:02:06.000+10:30","updated_at":"2016-01-01T13:02:06.000+10:30","promo_code":null,"promo_code_id":null,"insurance_offered":false,"total_adjustments_in_cents":0,"pre_adjusted_gross_in_cents":0,"nett_in_cents":0,"gross_in_cents":0,"commission_in_cents":0,"balance_in_cents":0,"paid_in_cents":0,"surcharge_in_cents":0,"deposit_in_cents":0,"web_site_name":"SeaLink","deposit_relevant":false,"deposit_due_on":null,"balance_due_on":null,"due":true,"first_travel_date":{"_type":"Date","_value":"2016-01-01"},"last_travel_date":null,"complete":true,"reason_not_complete":"","first_reason_not_complete":"","unprintable_luggage_tags":false,"discardable_in":60,"inactivatable_in":10,"notices":{},"client":null,"passenger_ids":[],"vehicle_ids":[],"reservation_ids":[],"adjustment_ids":[],"todo_items":[],"confirmation_requests":[],"passengers_attributes":[],"vehicles_attributes":[],"reservations_attributes":[],"adjustments_attributes":[],"payments_attributes":[],"payment_types_attributes":[{"id":4,"name":"visa","description":"visa","transaction_fee":"0.0","active":true,"position":3,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":"Visa","payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":5,"name":"master","description":"master","transaction_fee":"0.0","active":true,"position":4,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":7,"name":"PayPal","description":"Payments
|
59
59
|
made via PayPal account","transaction_fee":"0.0","active":true,"position":6,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"paypal","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":10,"name":"Opal
|
60
60
|
Pay","description":"Opal Payments","transaction_fee":"0.0","active":true,"position":9,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"opal_pay","gateway":null,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":false,"creditlink":false,"surchargeable":false}],"issued_tickets_attributes":[]}'
|
61
|
-
http_version:
|
61
|
+
http_version:
|
62
62
|
recorded_at: Wed, 21 Mar 2018 04:40:13 GMT
|
63
63
|
- request:
|
64
64
|
method: get
|
@@ -118,6 +118,6 @@ http_interactions:
|
|
118
118
|
string: '{"id":3,"state":"new","reference":"222226","public_comments":null,"internal_comments":null,"customer_contact_name":"John","customer_contact_phone":null,"customer_contact_mobile":null,"customer_contact_email":null,"currency_iso_code":"AUD","country_id":14,"drop_off_option_id":null,"drop_off_location_id":null,"post_code":null,"referral_code_id":1,"external_identifier":null,"created_at":"2016-01-01T13:02:06.000+10:30","updated_at":"2016-01-01T13:02:06.000+10:30","promo_code":null,"promo_code_id":null,"insurance_offered":false,"total_adjustments_in_cents":0,"pre_adjusted_gross_in_cents":0,"nett_in_cents":0,"gross_in_cents":0,"commission_in_cents":0,"balance_in_cents":0,"paid_in_cents":0,"surcharge_in_cents":0,"deposit_in_cents":0,"web_site_name":"SeaLink","deposit_relevant":false,"deposit_due_on":null,"balance_due_on":null,"due":true,"first_travel_date":{"_type":"Date","_value":"2016-01-01"},"last_travel_date":null,"complete":true,"reason_not_complete":"","first_reason_not_complete":"","unprintable_luggage_tags":false,"discardable_in":60,"inactivatable_in":10,"notices":{},"client":null,"passenger_ids":[],"vehicle_ids":[],"reservation_ids":[],"adjustment_ids":[],"todo_items":[],"confirmation_requests":[],"passengers_attributes":[],"vehicles_attributes":[],"reservations_attributes":[],"adjustments_attributes":[],"payments_attributes":[],"payment_types_attributes":[{"id":4,"name":"visa","description":"visa","transaction_fee":"0.0","active":true,"position":3,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":"Visa","payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":5,"name":"master","description":"master","transaction_fee":"0.0","active":true,"position":4,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":7,"name":"PayPal","description":"Payments
|
119
119
|
made via PayPal account","transaction_fee":"0.0","active":true,"position":6,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"paypal","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":10,"name":"Opal
|
120
120
|
Pay","description":"Opal Payments","transaction_fee":"0.0","active":true,"position":9,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"opal_pay","gateway":null,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":false,"creditlink":false,"surchargeable":false}],"issued_tickets_attributes":[]}'
|
121
|
-
http_version:
|
121
|
+
http_version:
|
122
122
|
recorded_at: Wed, 21 Mar 2018 04:40:14 GMT
|
123
123
|
recorded_with: VCR 4.0.0
|
@@ -0,0 +1,119 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://test.qt.sealink.com.au:8080/api/bookings/333536.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Content-Length:
|
11
|
+
- '0'
|
12
|
+
X-Api-Key:
|
13
|
+
- <QT_KEY>
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: OK
|
18
|
+
headers:
|
19
|
+
Date:
|
20
|
+
- Thu, 20 Feb 2020 04:49:21 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
Transfer-Encoding:
|
24
|
+
- chunked
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
Set-Cookie:
|
28
|
+
- __cfduid=d479fa6197c2ba76728106cae869037381582174160; expires=Sat, 21-Mar-20
|
29
|
+
04:49:20 GMT; path=/; domain=.quicktravel.com.au; HttpOnly; SameSite=Lax
|
30
|
+
- _session_id=nDi7wN9vz%2BWnYivttZncWLTlh0sID39ME4%2BzY1x85FwnrsEma2kQLQy56t8wG4Trg%2B%2B6pOaO5RsFQ%2FxoU3Q7K46VhP%2BMMADI5HK9csHIagOb5bHEjQM%3D--9uFF2MnY7YnenN12--OcTj7hAxSUXCSEo7gFV7qw%3D%3D;
|
31
|
+
path=/; HttpOnly
|
32
|
+
Cache-Control:
|
33
|
+
- max-age=0, private, must-revalidate
|
34
|
+
Etag:
|
35
|
+
- W/"ec8f8b692ff0cdd0ad92d33a51c41088"
|
36
|
+
P3p:
|
37
|
+
- CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
|
38
|
+
Strict-Transport-Security:
|
39
|
+
- max-age=631138519
|
40
|
+
Vary:
|
41
|
+
- Origin
|
42
|
+
X-Content-Type-Options:
|
43
|
+
- nosniff
|
44
|
+
X-Download-Options:
|
45
|
+
- noopen
|
46
|
+
X-Frame-Options:
|
47
|
+
- sameorigin
|
48
|
+
X-Rack-Cache:
|
49
|
+
- miss
|
50
|
+
X-Request-Id:
|
51
|
+
- 8a7660a8-8ca5-4b29-bf42-ffc70b2ab78b
|
52
|
+
X-Runtime:
|
53
|
+
- '0.974720'
|
54
|
+
X-Xss-Protection:
|
55
|
+
- 1; mode=block
|
56
|
+
Cf-Cache-Status:
|
57
|
+
- DYNAMIC
|
58
|
+
Expect-Ct:
|
59
|
+
- max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
|
60
|
+
Server:
|
61
|
+
- cloudflare
|
62
|
+
Cf-Ray:
|
63
|
+
- 567dda783ac2f2ed-ADL
|
64
|
+
body:
|
65
|
+
encoding: UTF-8
|
66
|
+
string: '{"id":333536,"state":"active","reference":"23263F","public_comments":null,"internal_comments":null,"comments":[{"id":12,"booking_id":333536,"comment_type":"customer","text":"I
|
67
|
+
hate this","sentiment":"neutral","language_code":"en","translated_text":null}],"customer_contact_name":"John
|
68
|
+
Smith","customer_contact_phone":"1234","customer_contact_mobile":null,"customer_contact_email":"john.smith@test.com","currency_iso_code":"AUD","country_id":14,"drop_off_option_id":null,"drop_off_location_id":null,"post_code":"5000","referral_code_id":31,"external_identifier":null,"created_at":"2020-02-20T12:11:12.000+08:00","updated_at":"2020-02-20T12:29:45.000+08:00","promo_code":null,"promo_code_id":null,"insurance_offered":true,"total_adjustments_in_cents":136,"pre_adjusted_gross_in_cents":10900,"nett_in_cents":11036,"gross_in_cents":11036,"commission_in_cents":0,"balance_in_cents":0,"paid_in_cents":11036,"surcharge_in_cents":136,"deposit_in_cents":11036,"web_site":{"id":2,"name":"SeaLink
|
69
|
+
Rottnest","created_at":"2017-08-08T09:32:56.000+08:00","updated_at":"2017-08-08T09:32:56.000+08:00","access_key":"46eff490c163bad418569bf990214f798df8533fea29f0efb75ff0da10865109","manager_id":4,"letterhead_id":1},"web_site_name":"SeaLink
|
70
|
+
Rottnest","deposit_relevant":false,"deposit_due_on":{"_type":"Date","_value":"2020-02-20T12:11:12.000+08:00"},"balance_due_on":{"_type":"Date","_value":"2020-02-20T12:11:12.000+08:00"},"due":true,"first_travel_date":{"_type":"Date","_value":"2020-02-21"},"last_travel_date":{"_type":"Date","_value":"2020-02-21"},"complete":true,"reason_not_complete":"","first_reason_not_complete":"","unprintable_luggage_tags":false,"ttlseconds":null,"expires_from":"2020-02-20T12:39:21.289+08:00","discardable_in":-600,"inactivatable_in":-600,"notices":{},"client":null,"passenger_ids":[1101379],"vehicle_ids":[],"reservation_ids":[898357,898358],"adjustment_ids":[],"todo_items":[],"confirmation_requests":[],"passengers_attributes":[{"id":1101379,"title":"Mr","first_name":"John","last_name":"Smith","passenger_type_id":1,"age":null,"gender":"Male","position":1,"driver_uid":null,"booking_id":333536}],"vehicles_attributes":[],"reservations_attributes":[{"id":898357,"booking_id":333536,"description":"The
|
71
|
+
''Quokka 1'', is a 400 passenger Enviro-Cat vessel that runs less fuel per
|
72
|
+
passenger than a small four cylinder car","comment":null,"active":true,"service_ids":[106911],"resource_id":2,"quantity":null,"adjustments_attributes":[{"id":3062684,"gross_in_cents":1900,"creator":{"id":4,"name":"Web
|
73
|
+
Site Manager","age":null,"first_name":"Web Site","last_name":"Manager","title":"Mr","created_at":"2017-05-01T13:27:47.000+08:00","updated_at":"2017-10-04T09:23:21.000+08:00","notes":"","updator_id":18,"creator_id":null,"active":true,"internal_subdivision":false,"business_number":null,"business_number_type":null,"access_type":2,"gender_id":"Male","auth_id":null,"birthdate":null},"created_at":"2020-02-20T12:11:49.000+08:00","description":"Rottnest
|
74
|
+
Island Admission Fee - Adult - One Way / Return on Same Day 2019/20","adjustable_item_type":"Reservation","adjustable_item_id":898357,"adjustment_definition_id":468,"adjustment_category_id":3,"automatic":true}],"complete":true,"reason_not_complete":"","first_reason_not_complete":"","enough_time_before_travel_to_edit":true,"start_time":"2000-01-01T08:30:00.000Z","end_time":"2000-01-01T10:00:00.000Z","route":"Perth
|
75
|
+
and Fremantle to Rottnest Island","route_path":"Perth to Rottnest Island","route_id":8,"trip_id":97,"inverse_reservation_id":898358,"from_route_stop_attributes":{"id":73,"inventory_controlled":true,"route_id":8,"position":1,"created_at":"2019-10-14T08:43:51.000+08:00","updated_at":"2019-10-14T08:43:51.000+08:00","stop_id":3,"name":"Perth","code":"PERTH","address":"Pier
|
76
|
+
3, Barrack Street Jetty, Perth, WA 6000"},"to_route_stop_attributes":{"id":75,"inventory_controlled":true,"route_id":8,"position":3,"created_at":"2019-10-14T08:43:51.000+08:00","updated_at":"2019-10-14T08:43:51.000+08:00","stop_id":2,"name":"Rottnest
|
77
|
+
Island","code":"ROTTO","address":"Main Jetty, Thomson Bay, Rottnest Island,
|
78
|
+
WA 6161"},"product_type_id":6,"itinerary_footer":false,"fare_basis_set_id":266,"manually_priced":false,"manually_assigned_fare_basis_set":false,"has_vendor":false,"has_fare_basis":true,"fare_basis_season_name":"","fare_basis_pointer_id":80,"pick_up_info":"0830:
|
79
|
+
Perth (Pier 3, Barrack Street Jetty, Perth, WA 6000)","drop_off_info":"1000:
|
80
|
+
Rottnest Island (Main Jetty, Thomson Bay, Rottnest Island, WA 6161)","selection_name":"0830
|
81
|
+
- Quokka 2 - From Perth","product_name_underscore":"ferry","resource_class_name_underscore":"ship","resource_class_name":"Ship","has_ticket_template":false,"resource_ignore_last_travel_date_offset":false,"first_travel_date":{"_type":"Date","_value":"2020-02-21"},"last_travel_date":{"_type":"Date","_value":"2020-02-21"},"durational":false,"duration":1,"span":1,"duration_units":"Days","date_start_label":"Start
|
82
|
+
Date:","date_end_label":"End Date:","expires":false,"expiry":"*NA*","has_skipped_reservation_groups":false,"editable_reservation_groups":[],"tariff_level_name":"Auto
|
83
|
+
Priced as: Rottnest Island - from 5 September 2019 - Same Day \u0026 Different
|
84
|
+
Day Return","gross_including_packaged_item_in_cents":6400,"pre_adjusted_gross_including_packaged_item_in_cents":4500,"gross_in_cents":6400,"pre_adjusted_gross_in_cents":4500,"pre_adjusted_commission_in_cents":0,"cost_in_cents":0,"sub_items_gross_in_cents":0,"rules":[{"unique_name":"Rottnest
|
85
|
+
Island Admission Fee - Same Day Return from 1 July 2019 (Not commissionable)","description":"Rottnest
|
86
|
+
Island Admission Fee (only charged when arriving on Rottnest Island, not when
|
87
|
+
departing)","display_name":"Rottnest Island Admission Fee - Same Day Return
|
88
|
+
from 1 July 2019 (Not commissionable)"},{"unique_name":"Rottnest Island Ferry
|
89
|
+
- Same Day Return - travel from 5/9/19","description":"Rottnest Island Ferry
|
90
|
+
- Same Day Return - travel from 5/9/19","display_name":"Rottnest Island Ferry
|
91
|
+
- Same Day Return - travel from 5/9/19"}],"package":false,"sub_reservation_depth":0,"extra_pick":null,"child_resource":null,"pending_confirmation":false,"confirmation_request_fields":[],"report_reservation_changes":false,"vendor_pnr":null,"pick_up_information":null,"drop_off_information":null,"vendor_staff":null,"notes_for_vendor":null,"passenger_ids":[1101379],"passenger_splits":[{"id":7646275,"consumer_id":1101379,"consumer_splittable_id":898357,"gross_in_cents":4500,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":"2020-02-20T12:11:14.000+08:00","updated_at":"2020-02-20T12:11:15.000+08:00","commission_percentage":"0.0","length_multiplier":"1.0"}],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{"1101379":6400}},{"id":898358,"booking_id":333536,"description":"The
|
92
|
+
''Quokka 1'', is a 400 passenger Enviro-Cat vessel that runs less fuel per
|
93
|
+
passenger than a small four cylinder car","comment":null,"active":true,"service_ids":[106912],"resource_id":2,"quantity":null,"adjustments_attributes":[],"complete":true,"reason_not_complete":"","first_reason_not_complete":"","enough_time_before_travel_to_edit":true,"start_time":"2000-01-01T16:15:00.000Z","end_time":"2000-01-01T17:45:00.000Z","route":"Rottnest
|
94
|
+
Island to Fremantle and Perth","route_path":"Rottnest Island to Perth","route_id":9,"trip_id":98,"inverse_reservation_id":898357,"from_route_stop_attributes":{"id":76,"inventory_controlled":true,"route_id":9,"position":1,"created_at":"2019-10-14T08:44:31.000+08:00","updated_at":"2019-10-14T08:44:31.000+08:00","stop_id":2,"name":"Rottnest
|
95
|
+
Island","code":"ROTTO","address":"Main Jetty, Thomson Bay, Rottnest Island,
|
96
|
+
WA 6161"},"to_route_stop_attributes":{"id":78,"inventory_controlled":true,"route_id":9,"position":3,"created_at":"2019-10-14T08:44:31.000+08:00","updated_at":"2019-10-14T08:44:31.000+08:00","stop_id":3,"name":"Perth","code":"PERTH","address":"Pier
|
97
|
+
3, Barrack Street Jetty, Perth, WA 6000"},"product_type_id":6,"itinerary_footer":false,"fare_basis_set_id":257,"manually_priced":false,"manually_assigned_fare_basis_set":false,"has_vendor":false,"has_fare_basis":true,"fare_basis_season_name":"","fare_basis_pointer_id":81,"pick_up_info":"1615:
|
98
|
+
Rottnest Island (Main Jetty, Thomson Bay, Rottnest Island, WA 6161)","drop_off_info":"1745:
|
99
|
+
Perth (Pier 3, Barrack Street Jetty, Perth, WA 6000)","selection_name":"1615
|
100
|
+
- Quokka 2 - To Perth","product_name_underscore":"ferry","resource_class_name_underscore":"ship","resource_class_name":"Ship","has_ticket_template":false,"resource_ignore_last_travel_date_offset":false,"first_travel_date":{"_type":"Date","_value":"2020-02-21"},"last_travel_date":{"_type":"Date","_value":"2020-02-21"},"durational":false,"duration":1,"span":1,"duration_units":"Days","date_start_label":"Start
|
101
|
+
Date:","date_end_label":"End Date:","expires":false,"expiry":"*NA*","has_skipped_reservation_groups":false,"editable_reservation_groups":[],"tariff_level_name":"Auto
|
102
|
+
Priced as: Rottnest Island - from 5 September 2019 - Same Day \u0026 Different
|
103
|
+
Day Return","gross_including_packaged_item_in_cents":4500,"pre_adjusted_gross_including_packaged_item_in_cents":4500,"gross_in_cents":4500,"pre_adjusted_gross_in_cents":4500,"pre_adjusted_commission_in_cents":0,"cost_in_cents":0,"sub_items_gross_in_cents":0,"rules":[{"unique_name":"Rottnest
|
104
|
+
Island Ferry - Same Day Return - travel from 5/9/19","description":"Rottnest
|
105
|
+
Island Ferry - Same Day Return - travel from 5/9/19","display_name":"Rottnest
|
106
|
+
Island Ferry - Same Day Return - travel from 5/9/19"}],"package":false,"sub_reservation_depth":0,"extra_pick":null,"child_resource":null,"pending_confirmation":false,"confirmation_request_fields":[],"report_reservation_changes":false,"vendor_pnr":null,"pick_up_information":null,"drop_off_information":null,"vendor_staff":null,"notes_for_vendor":null,"passenger_ids":[1101379],"passenger_splits":[{"id":7646276,"consumer_id":1101379,"consumer_splittable_id":898358,"gross_in_cents":4500,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":"2020-02-20T12:11:14.000+08:00","updated_at":"2020-02-20T12:11:15.000+08:00","commission_percentage":"0.0","length_multiplier":"1.0"}],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{"1101379":4500}}],"adjustments_attributes":[],"payments_attributes":[{"id":155921,"booking_id":333536,"amount_in_cents":11036,"client_id":null,"creator_id":4,"created_at":"2020-02-20T12:29:42.000+08:00","updated_at":"2020-02-20T12:29:44.000+08:00","till_id":3,"comment":"","payment_type_id":2,"success":true,"payment_method":"credit_card","surcharge_in_cents":136,"creator_name":"Web
|
107
|
+
Site Manager"},{"id":155920,"booking_id":333536,"amount_in_cents":10900,"client_id":null,"creator_id":4,"created_at":"2020-02-20T12:22:33.000+08:00","updated_at":"2020-02-20T12:22:45.000+08:00","till_id":3,"comment":"","payment_type_id":21,"success":false,"payment_method":"poli_pay","surcharge_in_cents":0,"creator_name":"Web
|
108
|
+
Site Manager"}],"payment_types_attributes":[{"id":5,"name":"American Express","description":"Payments
|
109
|
+
made by American Express through the payment gateway.","transaction_fee":"1.25","active":true,"position":3,"comment_required":false,"created_at":"2017-08-03T10:05:26.000+08:00","updated_at":"2017-12-15T07:37:59.000+08:00","credit_card_brand":"American
|
110
|
+
Express","payment_method":"credit_card","gateway":"braintree","restrict_refunds":false,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":true},{"id":14,"name":"MasterCard","description":"Payments
|
111
|
+
made by MasterCard through the payment gateway.","transaction_fee":"1.25","active":true,"position":4,"comment_required":false,"created_at":"2017-08-03T10:23:50.000+08:00","updated_at":"2017-12-01T02:54:42.000+08:00","credit_card_brand":"MasterCard","payment_method":"credit_card","gateway":"braintree","restrict_refunds":false,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":true},{"id":2,"name":"Visa","description":"Payments
|
112
|
+
paid by Visa through the payment gateway","transaction_fee":"1.25","active":true,"position":5,"comment_required":false,"created_at":"2017-05-01T13:27:46.000+08:00","updated_at":"2017-12-01T02:54:45.000+08:00","credit_card_brand":"Visa","payment_method":"credit_card","gateway":"braintree","restrict_refunds":false,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":true},{"id":21,"name":"POLiPay","description":"POLiPay
|
113
|
+
only online","transaction_fee":"0.0","active":true,"position":22,"comment_required":false,"created_at":"2017-09-27T14:39:23.000+08:00","updated_at":"2017-10-11T06:49:44.000+08:00","credit_card_brand":null,"payment_method":"poli_pay","gateway":null,"restrict_refunds":false,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":true,"background":false,"creditlink":false,"surchargeable":false}],"issued_tickets_attributes":[],"creator":{"name":"Web
|
114
|
+
Site Manager","gravatar":"https://secure.gravatar.com/avatar/?secure=true\u0026gravatar=%7B%3Asize%3D%3E50%7D\u0026alt=Web%20Site%20Manager","url":"/parties/4"},"updator":{"name":"Web
|
115
|
+
Site Manager","gravatar":"https://secure.gravatar.com/avatar/?secure=true\u0026gravatar=%7B%3Asize%3D%3E50%7D\u0026alt=Web%20Site%20Manager","url":"/parties/4"},"company_creator":{"name":"Captain
|
116
|
+
Cook Cruises WA - Reservations","gravatar":"https://secure.gravatar.com/avatar/?secure=true\u0026gravatar=%7B%3Asize%3D%3E50%7D\u0026alt=Captain%20Cook%20Cruises%20WA%20-%20Reservations","url":"/parties/3"}}'
|
117
|
+
http_version:
|
118
|
+
recorded_at: Thu, 20 Feb 2020 04:49:22 GMT
|
119
|
+
recorded_with: VCR 2.9.3
|
@@ -83,14 +83,14 @@ http_interactions:
|
|
83
83
|
notes_for_vendor","vendor_staff note_for_inventory_type_change"],"report_reservation_changes":false,"vendor_pnr":null,"pick_up_information":null,"drop_off_information":null,"vendor_staff":null,"notes_for_vendor":null,"passenger_ids":[1,2],"passenger_splits":[{"id":3,"consumer_id":1,"consumer_splittable_id":2,"gross_in_cents":6000,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":null,"updated_at":null,"commission_percentage":"0.0","length_multiplier":"1.0"},{"id":4,"consumer_id":2,"consumer_splittable_id":2,"gross_in_cents":6000,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":null,"updated_at":null,"commission_percentage":"0.0","length_multiplier":"1.0"}],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{"1":3000,"2":3000}}],"extra_pick":null,"child_resource":null,"pending_confirmation":false,"confirmation_request_fields":[],"report_reservation_changes":false,"vendor_pnr":null,"pick_up_information":null,"drop_off_information":null,"vendor_staff":null,"notes_for_vendor":null,"passenger_ids":[1,2],"passenger_splits":[{"id":1,"consumer_id":1,"consumer_splittable_id":1,"gross_in_cents":0,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":null,"updated_at":null,"commission_percentage":"0.0","length_multiplier":"1.0"},{"id":2,"consumer_id":2,"consumer_splittable_id":1,"gross_in_cents":0,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":null,"updated_at":null,"commission_percentage":"0.0","length_multiplier":"1.0"}],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{"1":0,"2":0}}],"adjustments_attributes":[],"payments_attributes":[],"payment_types_attributes":[{"id":4,"name":"visa","description":"visa","transaction_fee":"0.0","active":true,"position":3,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":"Visa","payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":5,"name":"master","description":"master","transaction_fee":"0.0","active":true,"position":4,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":7,"name":"PayPal","description":"Payments
|
84
84
|
made via PayPal account","transaction_fee":"0.0","active":true,"position":6,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"paypal","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":10,"name":"Opal
|
85
85
|
Pay","description":"Opal Payments","transaction_fee":"0.0","active":true,"position":9,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"opal_pay","gateway":null,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":false,"creditlink":false,"surchargeable":false}],"issued_tickets_attributes":[]}'
|
86
|
-
http_version:
|
86
|
+
http_version:
|
87
87
|
recorded_at: Wed, 21 Mar 2018 04:40:17 GMT
|
88
88
|
- request:
|
89
89
|
method: put
|
90
90
|
uri: http://test.qt.sealink.com.au:8080/api/bookings/1/update_with_nested_attributes.json
|
91
91
|
body:
|
92
92
|
encoding: UTF-8
|
93
|
-
string: booking
|
93
|
+
string: booking%5Bcustomer_contact_name%5D=New%20Name&booking%5Bconsumers%5D%5B%5D%5Bid%5D=1&booking%5Bconsumers%5D%5B%5D%5Btitle%5D=Mr&booking%5Bconsumers%5D%5B%5D%5Bfirst_name%5D=New&booking%5Bconsumers%5D%5B%5D%5Blast_name%5D=Name
|
94
94
|
headers:
|
95
95
|
Content-Length:
|
96
96
|
- '0'
|
@@ -141,7 +141,7 @@ http_interactions:
|
|
141
141
|
body:
|
142
142
|
encoding: UTF-8
|
143
143
|
string: '{"id":1}'
|
144
|
-
http_version:
|
144
|
+
http_version:
|
145
145
|
recorded_at: Wed, 21 Mar 2018 04:40:18 GMT
|
146
146
|
- request:
|
147
147
|
method: get
|
@@ -227,6 +227,6 @@ http_interactions:
|
|
227
227
|
notes_for_vendor","vendor_staff note_for_inventory_type_change"],"report_reservation_changes":false,"vendor_pnr":null,"pick_up_information":null,"drop_off_information":null,"vendor_staff":null,"notes_for_vendor":null,"passenger_ids":[1,2],"passenger_splits":[{"id":3,"consumer_id":1,"consumer_splittable_id":2,"gross_in_cents":6000,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":null,"updated_at":null,"commission_percentage":"0.0","length_multiplier":"1.0"},{"id":4,"consumer_id":2,"consumer_splittable_id":2,"gross_in_cents":6000,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":null,"updated_at":null,"commission_percentage":"0.0","length_multiplier":"1.0"}],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{"1":3000,"2":3000}}],"extra_pick":null,"child_resource":null,"pending_confirmation":false,"confirmation_request_fields":[],"report_reservation_changes":false,"vendor_pnr":null,"pick_up_information":null,"drop_off_information":null,"vendor_staff":null,"notes_for_vendor":null,"passenger_ids":[1,2],"passenger_splits":[{"id":1,"consumer_id":1,"consumer_splittable_id":1,"gross_in_cents":0,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":null,"updated_at":null,"commission_percentage":"0.0","length_multiplier":"1.0"},{"id":2,"consumer_id":2,"consumer_splittable_id":1,"gross_in_cents":0,"commission_in_cents":0,"consumer_splittable_type":"Reservation","created_at":null,"updated_at":null,"commission_percentage":"0.0","length_multiplier":"1.0"}],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{"1":0,"2":0}}],"adjustments_attributes":[],"payments_attributes":[],"payment_types_attributes":[{"id":4,"name":"visa","description":"visa","transaction_fee":"0.0","active":true,"position":3,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":"Visa","payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":5,"name":"master","description":"master","transaction_fee":"0.0","active":true,"position":4,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"credit_card","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":7,"name":"PayPal","description":"Payments
|
228
228
|
made via PayPal account","transaction_fee":"0.0","active":true,"position":6,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"paypal","gateway":"braintree","on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":true,"creditlink":false,"surchargeable":false},{"id":10,"name":"Opal
|
229
229
|
Pay","description":"Opal Payments","transaction_fee":"0.0","active":true,"position":9,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":null,"payment_method":"opal_pay","gateway":null,"on_account":false,"ticket_holding":false,"requires_staff":false,"internal":false,"redirect":false,"background":false,"creditlink":false,"surchargeable":false}],"issued_tickets_attributes":[]}'
|
230
|
-
http_version:
|
230
|
+
http_version:
|
231
231
|
recorded_at: Wed, 21 Mar 2018 04:40:19 GMT
|
232
232
|
recorded_with: VCR 4.0.0
|
@@ -5,7 +5,7 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/reservations.json
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: resource_id=4&first_travel_date=2016-03-01&passenger_types_numbers
|
8
|
+
string: resource_id=4&first_travel_date=2016-03-01&passenger_types_numbers%5B1%5D=2&passenger_types_numbers%5B2%5D=1
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
@@ -62,6 +62,6 @@ http_interactions:
|
|
62
62
|
Date:","date_end_label":"End Date:","expires":false,"expiry":"*NA*","has_skipped_reservation_groups":false,"editable_reservation_groups":[],"tariff_level_name":"Auto
|
63
63
|
Priced as: Rack Rate","gross_including_packaged_item_in_cents":0,"pre_adjusted_gross_including_packaged_item_in_cents":0,"gross_in_cents":0,"pre_adjusted_gross_in_cents":0,"pre_adjusted_commission_in_cents":0,"cost_in_cents":0,"rules":[],"package":false,"sub_reservation_depth":0,"extra_pick":null,"child_resource":null,"pending_confirmation":false,"confirmation_request_fields":["pick_up_information","drop_off_information","vendor_pnr
|
64
64
|
notes_for_vendor","vendor_staff note_for_inventory_type_change"],"report_reservation_changes":false,"vendor_pnr":null,"pick_up_information":null,"drop_off_information":null,"vendor_staff":null,"notes_for_vendor":null,"passenger_ids":[],"passenger_splits":[],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{}}'
|
65
|
-
http_version:
|
65
|
+
http_version:
|
66
66
|
recorded_at: Wed, 21 Mar 2018 04:40:41 GMT
|
67
67
|
recorded_with: VCR 4.0.0
|
@@ -0,0 +1,83 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://test.qt.sealink.com.au:8080/api/packages/464.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Content-Length:
|
11
|
+
- '0'
|
12
|
+
X-Api-Key:
|
13
|
+
- <QT_KEY>
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: OK
|
18
|
+
headers:
|
19
|
+
Date:
|
20
|
+
- Thu, 20 Feb 2020 01:00:56 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
Transfer-Encoding:
|
24
|
+
- chunked
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
Set-Cookie:
|
28
|
+
- __cfduid=d4476d9cd867237ab1e7ddfe8cab9bb7f1582160456; expires=Sat, 21-Mar-20
|
29
|
+
01:00:56 GMT; path=/; domain=.quicktravel.com.au; HttpOnly; SameSite=Lax
|
30
|
+
- _session_id=HNhfu80YF9UuLdm9%2Fvd4OrAKDAwGgM7yyyxm5Hre5J6SCh1rK7pOCUrasl0eqcCxjItMZCX6GWErtUMjSUS%2BfLOfX8kg%2BEoaKm1O41EPp0aohkzYQ78%3D--ylH6XcOdnh0BcLnE--SKcJAqb%2B%2BAdJmnzJZ0i1%2Bg%3D%3D;
|
31
|
+
path=/; HttpOnly
|
32
|
+
Cache-Control:
|
33
|
+
- max-age=0, private, must-revalidate
|
34
|
+
Etag:
|
35
|
+
- W/"da1758ef2426563776eaed931d5175b9"
|
36
|
+
P3p:
|
37
|
+
- CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
|
38
|
+
Strict-Transport-Security:
|
39
|
+
- max-age=631138519
|
40
|
+
Vary:
|
41
|
+
- Origin
|
42
|
+
X-Content-Type-Options:
|
43
|
+
- nosniff
|
44
|
+
X-Download-Options:
|
45
|
+
- noopen
|
46
|
+
X-Frame-Options:
|
47
|
+
- sameorigin
|
48
|
+
X-Rack-Cache:
|
49
|
+
- miss
|
50
|
+
X-Request-Id:
|
51
|
+
- 03c5ebc4-eb1d-4647-9d59-4f33e7417a76
|
52
|
+
X-Runtime:
|
53
|
+
- '0.141355'
|
54
|
+
X-Xss-Protection:
|
55
|
+
- 1; mode=block
|
56
|
+
Cf-Cache-Status:
|
57
|
+
- DYNAMIC
|
58
|
+
Expect-Ct:
|
59
|
+
- max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
|
60
|
+
Server:
|
61
|
+
- cloudflare
|
62
|
+
Cf-Ray:
|
63
|
+
- 567c8be46bd9f2e9-ADL
|
64
|
+
body:
|
65
|
+
encoding: UTF-8
|
66
|
+
string: '{"name":"Swan Valley Gourmet Wine Cruise (SVGWC-0945)","id":464,"type":"Package","product_type_id":11,"resource_groups":[{"title":"Perth
|
67
|
+
to Sandalford ","id":664,"pick":1,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":21,"package_options":[],"type":"ResourceGroup","package_items":[{"id":2058,"default_selection":false,"type":"PackageItem","resource":{"id":486,"name":"Perth
|
68
|
+
to Mandoon/Sandalford","type":"Ship","package_item_id":2058,"product_type_id":21,"from_route_stop_id":351,"to_route_stop_id":353}}]},{"title":"Tour
|
69
|
+
Description \u0026 Vendor Items","id":665,"pick":1,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":11,"package_options":[],"type":"ResourceGroup","package_items":[{"id":1828,"default_selection":false,"type":"PackageItem","resource":{"name":"Swan
|
70
|
+
Valley Gourmet Wine Cruise - Vendor Items \u0026 Tour Description","id":465,"type":"Package","product_type_id":11,"resource_groups":[{"title":"Tour
|
71
|
+
Description \u0026 Vendor Items","id":667,"pick":1,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":20,"package_options":[],"type":"ResourceGroup","package_items":[{"id":1830,"default_selection":false,"type":"PackageItem","resource":{"id":397,"name":"SVGWC-0945
|
72
|
+
- Swan Valley Gourmet Wine Cruise","type":"GenericResource","package_item_id":1830,"product_type_id":20,"from_route_stop_id":null,"to_route_stop_id":null}},{"id":1831,"default_selection":false,"type":"PackageItem","resource":{"id":329,"name":"BELLS:
|
73
|
+
Morning Tea Package","type":"GenericResource","package_item_id":1831,"product_type_id":20,"from_route_stop_id":null,"to_route_stop_id":null}},{"id":1832,"default_selection":false,"type":"PackageItem","resource":{"id":330,"name":"BELLS:
|
74
|
+
Afternoon Tea Package","type":"GenericResource","package_item_id":1832,"product_type_id":20,"from_route_stop_id":null,"to_route_stop_id":null}},{"id":1833,"default_selection":false,"type":"PackageItem","resource":{"id":335,"name":"SANDALFORD
|
75
|
+
ESTATE: 2 Course Lunch \u0026 Wine Tasting","type":"GenericResource","package_item_id":1833,"product_type_id":20,"from_route_stop_id":null,"to_route_stop_id":null}}]}],"default_options":[]}}]},{"title":"Sandalford
|
76
|
+
to Perth","id":666,"pick":1,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":21,"package_options":[],"type":"ResourceGroup","package_items":[{"id":2059,"default_selection":false,"type":"PackageItem","resource":{"id":487,"name":"Sandalford/Mandoon
|
77
|
+
to Perth","type":"Ship","package_item_id":2059,"product_type_id":21,"from_route_stop_id":354,"to_route_stop_id":356}}]},{"title":"Optional
|
78
|
+
Extra","id":713,"pick":0,"minimum_required":false,"maximum_restriction":false,"minimum":null,"maximum":null,"product_type_id":22,"package_options":[],"type":"ResourceGroup","package_items":[{"id":2087,"default_selection":false,"type":"PackageItem","resource":{"id":502,"name":"Premium
|
79
|
+
Beverage Upgrade (18+)","type":"Item","package_item_id":2087,"product_type_id":22,"from_route_stop_id":null,"to_route_stop_id":null}},{"id":2088,"default_selection":false,"type":"PackageItem","resource":{"id":503,"name":"Last
|
80
|
+
Minute Premium Beverage Upgrade (18+) ","type":"Item","package_item_id":2088,"product_type_id":22,"from_route_stop_id":null,"to_route_stop_id":null}}]}],"default_options":[]}'
|
81
|
+
http_version:
|
82
|
+
recorded_at: Thu, 20 Feb 2020 01:00:56 GMT
|
83
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,80 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://test.qt.sealink.com.au:8080/api/product_types.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Content-Length:
|
11
|
+
- '0'
|
12
|
+
X-Api-Key:
|
13
|
+
- <QT_KEY>
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 200
|
17
|
+
message: OK
|
18
|
+
headers:
|
19
|
+
Date:
|
20
|
+
- Thu, 20 Feb 2020 01:01:30 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
Transfer-Encoding:
|
24
|
+
- chunked
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
Set-Cookie:
|
28
|
+
- __cfduid=df7c89a7945a63958553e70497ede639a1582160490; expires=Sat, 21-Mar-20
|
29
|
+
01:01:30 GMT; path=/; domain=.quicktravel.com.au; HttpOnly; SameSite=Lax
|
30
|
+
- _session_id=ohFEAurOFA0k3Dkfurpzg7yWDoevpE1we3n1pGout1j%2BCbEjjT9xDpMiVvY8FKGzDX8YDbEV2KYzlGqKmub84stiPt9YtKFD3o69iDPkSfqNbw9Xsng%3D--DBpWmmvc92dX5tYa--yXGiS4InGDOsWVI5ll1G7Q%3D%3D;
|
31
|
+
path=/; HttpOnly
|
32
|
+
Cache-Control:
|
33
|
+
- max-age=0, private, must-revalidate
|
34
|
+
Etag:
|
35
|
+
- W/"9e86e28ddbc8b9438ee44e55c192b7eb"
|
36
|
+
P3p:
|
37
|
+
- CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
|
38
|
+
Strict-Transport-Security:
|
39
|
+
- max-age=631138519
|
40
|
+
Vary:
|
41
|
+
- Origin
|
42
|
+
X-Content-Type-Options:
|
43
|
+
- nosniff
|
44
|
+
X-Download-Options:
|
45
|
+
- noopen
|
46
|
+
X-Frame-Options:
|
47
|
+
- sameorigin
|
48
|
+
X-Rack-Cache:
|
49
|
+
- miss
|
50
|
+
X-Request-Id:
|
51
|
+
- 95f9f85d-fe5d-4d5f-b52b-6a63c2613249
|
52
|
+
X-Runtime:
|
53
|
+
- '0.057441'
|
54
|
+
X-Xss-Protection:
|
55
|
+
- 1; mode=block
|
56
|
+
Cf-Cache-Status:
|
57
|
+
- DYNAMIC
|
58
|
+
Expect-Ct:
|
59
|
+
- max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
|
60
|
+
Server:
|
61
|
+
- cloudflare
|
62
|
+
Cf-Ray:
|
63
|
+
- 567c8cbae911f2e9-ADL
|
64
|
+
body:
|
65
|
+
encoding: UTF-8
|
66
|
+
string: '[{"id":6,"name":"Ferry","resource_class_name":"Ship","disclaimer_id":1,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":true,"prompt_for_pick_up_drop_off":false,"book_before_level":90,"book_before_units":"minutes","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-07-31T13:58:21.000+08:00","updated_at":"2019-10-14T08:37:06.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":9,"name":"Miscellaneous
|
67
|
+
Item","resource_class_name":"Item","disclaimer_id":null,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-08-28T13:38:17.000+08:00","updated_at":"2017-08-28T13:38:17.000+08:00","code":"","needs_services":false,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":10,"name":"Gift
|
68
|
+
Vouchers/Donations","resource_class_name":"GenericResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-09-27T08:47:40.000+08:00","updated_at":"2017-12-07T12:12:53.000+08:00","code":"GIFT","needs_services":false,"can_have_quantity":false,"can_have_dates":false,"needs_passengers":false},{"id":11,"name":"Rottnest
|
69
|
+
Packages","resource_class_name":"Package","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":true,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-12-11T09:02:10.000+08:00","updated_at":"2018-08-17T08:38:42.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":12,"name":"OLD
|
70
|
+
Rottnest Island Bike Hire","resource_class_name":"GenericResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":true,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2017-12-21T11:02:46.000+08:00","updated_at":"2018-10-29T11:33:29.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":13,"name":"Rottnest
|
71
|
+
Island Tours","resource_class_name":"GenericResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":true,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2018-07-10T06:53:42.000+08:00","updated_at":"2018-07-10T06:53:42.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":15,"name":"Rottnest
|
72
|
+
Island Bike Hire","resource_class_name":"Item","disclaimer_id":2,"durational":true,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["vendor_pnr","notes_for_vendor","vendor_staff"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2018-10-29T11:35:34.000+08:00","updated_at":"2020-02-06T06:29:50.000+08:00","code":"","needs_services":true,"can_have_quantity":true,"can_have_dates":true,"needs_passengers":false},{"id":16,"name":"Accommodation","resource_class_name":"Accommodation","disclaimer_id":2,"durational":true,"can_find_by_location":true,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2018-12-28T05:53:59.000+08:00","updated_at":"2019-03-14T05:08:22.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":17,"name":"Coach
|
73
|
+
Transfers","resource_class_name":"ScheduledTripResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":true,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2019-03-19T10:45:01.000+08:00","updated_at":"2019-03-19T10:45:01.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":18,"name":"Flights","resource_class_name":"ScheduledTripResource","disclaimer_id":2,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["trip_name","departure_time","pick_up_information","drop_off_information","vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2019-09-23T14:17:51.000+08:00","updated_at":"2019-09-24T07:37:17.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":19,"name":"Extra
|
74
|
+
Picks","resource_class_name":"ExtraPick","disclaimer_id":null,"durational":true,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["vendor_pnr","notes_for_vendor","vendor_staff","note_for_inventory_type_change"],"only_bookable_with_accommodation":true,"footer_itinerary_item":false,"created_at":"2019-09-30T08:07:18.000+08:00","updated_at":"2019-09-30T08:07:18.000+08:00","code":"","needs_services":true,"can_have_quantity":true,"can_have_dates":true,"needs_passengers":false},{"id":20,"name":"Captain
|
75
|
+
Cook Cruises - Tour \u0026 Vendor Resources","resource_class_name":"GenericResource","disclaimer_id":1,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":["reservation_group_id","vendor_pnr","notes_for_vendor"],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2019-11-28T09:10:55.000+08:00","updated_at":"2020-02-06T06:07:31.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":21,"name":"Captain
|
76
|
+
Cook Cruises - Ferry","resource_class_name":"Ship","disclaimer_id":1,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":true,"multi_leg":true,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2020-02-03T05:24:36.000+08:00","updated_at":"2020-02-03T05:24:36.000+08:00","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":22,"name":"Captain
|
77
|
+
Cook Cruises - Optional Upgrades","resource_class_name":"Item","disclaimer_id":1,"durational":false,"can_find_by_location":false,"measure_units_by_pax_count":false,"multi_leg":false,"prompt_for_pick_up_drop_off":false,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2020-02-06T06:08:10.000+08:00","updated_at":"2020-02-06T06:08:10.000+08:00","code":"","needs_services":true,"can_have_quantity":true,"can_have_dates":true,"needs_passengers":false}]'
|
78
|
+
http_version:
|
79
|
+
recorded_at: Thu, 20 Feb 2020 01:01:30 GMT
|
80
|
+
recorded_with: VCR 2.9.3
|
@@ -5,7 +5,7 @@ http_interactions:
|
|
5
5
|
uri: http://test.qt.sealink.com.au:8080/api/price_quotes/calculate
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
|
-
string: reservations
|
8
|
+
string: reservations%5B%5D%5Bresource_id%5D=7&reservations%5B%5D%5Bquantity%5D=2&reservations%5B%5D%5Bfirst_travel_date%5D=2016-04-15
|
9
9
|
headers:
|
10
10
|
Content-Length:
|
11
11
|
- '0'
|
@@ -56,14 +56,14 @@ http_interactions:
|
|
56
56
|
body:
|
57
57
|
encoding: UTF-8
|
58
58
|
string: '{"quoted_booking_gross_in_cents":6400,"original_booking_gross_in_cents":0,"applied_rules":[],"quoted_booking_breakdown":[{"quoted_gross_in_cents":6400,"original_gross_in_cents":0,"applied_rules":[],"reservation":{"id":null,"resource_id":7,"first_travel_date":"2016-04-15","passengers":{},"vehicles":[]},"new":true,"deleted":false}]}'
|
59
|
-
http_version:
|
59
|
+
http_version:
|
60
60
|
recorded_at: Wed, 21 Mar 2018 04:40:31 GMT
|
61
61
|
- request:
|
62
62
|
method: post
|
63
63
|
uri: http://test.qt.sealink.com.au:8080/api/price_quotes/calculate
|
64
64
|
body:
|
65
65
|
encoding: UTF-8
|
66
|
-
string: reservations
|
66
|
+
string: reservations%5B%5D%5Bresource_id%5D=7&reservations%5B%5D%5Bquantity%5D=3&reservations%5B%5D%5Bfirst_travel_date%5D=2016-04-15
|
67
67
|
headers:
|
68
68
|
Content-Length:
|
69
69
|
- '0'
|
@@ -116,6 +116,6 @@ http_interactions:
|
|
116
116
|
string: '{"quoted_booking_gross_in_cents":4800,"original_booking_gross_in_cents":0,"applied_rules":["Special
|
117
117
|
Offer"],"quoted_booking_breakdown":[{"quoted_gross_in_cents":4800,"original_gross_in_cents":0,"applied_rules":["Special
|
118
118
|
Offer"],"reservation":{"id":null,"resource_id":7,"first_travel_date":"2016-04-15","passengers":{},"vehicles":[]},"new":true,"deleted":false}]}'
|
119
|
-
http_version:
|
119
|
+
http_version:
|
120
120
|
recorded_at: Wed, 21 Mar 2018 04:40:31 GMT
|
121
121
|
recorded_with: VCR 4.0.0
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: quicktravel_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 4.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Noack
|
@@ -10,84 +10,78 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2020-
|
13
|
+
date: 2020-12-02 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: httparty
|
17
17
|
requirement: !ruby/object:Gem::Requirement
|
18
18
|
requirements:
|
19
|
-
- - "
|
19
|
+
- - ">="
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
21
|
+
version: 0.18.1
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
|
-
- - "
|
26
|
+
- - ">="
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version:
|
28
|
+
version: 0.18.1
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
|
-
name:
|
30
|
+
name: activesupport
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
32
32
|
requirements:
|
33
33
|
- - ">="
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version:
|
35
|
+
version: 5.0.0
|
36
36
|
type: :runtime
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
40
|
- - ">="
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version:
|
42
|
+
version: 5.0.0
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
|
-
name:
|
44
|
+
name: facets
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
47
|
- - ">="
|
48
48
|
- !ruby/object:Gem::Version
|
49
|
-
version:
|
49
|
+
version: '0'
|
50
50
|
type: :runtime
|
51
51
|
prerelease: false
|
52
52
|
version_requirements: !ruby/object:Gem::Requirement
|
53
53
|
requirements:
|
54
54
|
- - ">="
|
55
55
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
56
|
+
version: '0'
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
|
-
name:
|
58
|
+
name: money
|
59
59
|
requirement: !ruby/object:Gem::Requirement
|
60
60
|
requirements:
|
61
61
|
- - ">="
|
62
62
|
- !ruby/object:Gem::Version
|
63
|
-
version: '0'
|
63
|
+
version: '6.0'
|
64
64
|
type: :runtime
|
65
65
|
prerelease: false
|
66
66
|
version_requirements: !ruby/object:Gem::Requirement
|
67
67
|
requirements:
|
68
68
|
- - ">="
|
69
69
|
- !ruby/object:Gem::Version
|
70
|
-
version: '0'
|
70
|
+
version: '6.0'
|
71
71
|
- !ruby/object:Gem::Dependency
|
72
|
-
name:
|
72
|
+
name: money_extensions
|
73
73
|
requirement: !ruby/object:Gem::Requirement
|
74
74
|
requirements:
|
75
75
|
- - ">="
|
76
76
|
- !ruby/object:Gem::Version
|
77
|
-
version: '
|
78
|
-
- - "<"
|
79
|
-
- !ruby/object:Gem::Version
|
80
|
-
version: '6.0'
|
77
|
+
version: '1.0'
|
81
78
|
type: :runtime
|
82
79
|
prerelease: false
|
83
80
|
version_requirements: !ruby/object:Gem::Requirement
|
84
81
|
requirements:
|
85
82
|
- - ">="
|
86
83
|
- !ruby/object:Gem::Version
|
87
|
-
version: '
|
88
|
-
- - "<"
|
89
|
-
- !ruby/object:Gem::Version
|
90
|
-
version: '6.0'
|
84
|
+
version: '1.0'
|
91
85
|
- !ruby/object:Gem::Dependency
|
92
86
|
name: will_paginate
|
93
87
|
requirement: !ruby/object:Gem::Requirement
|
@@ -108,14 +102,14 @@ dependencies:
|
|
108
102
|
requirements:
|
109
103
|
- - "~>"
|
110
104
|
- !ruby/object:Gem::Version
|
111
|
-
version: '
|
105
|
+
version: '2'
|
112
106
|
type: :development
|
113
107
|
prerelease: false
|
114
108
|
version_requirements: !ruby/object:Gem::Requirement
|
115
109
|
requirements:
|
116
110
|
- - "~>"
|
117
111
|
- !ruby/object:Gem::Version
|
118
|
-
version: '
|
112
|
+
version: '2'
|
119
113
|
- !ruby/object:Gem::Dependency
|
120
114
|
name: rake
|
121
115
|
requirement: !ruby/object:Gem::Requirement
|
@@ -288,8 +282,8 @@ files:
|
|
288
282
|
- Rakefile
|
289
283
|
- examples/example_config.rb
|
290
284
|
- examples/login_example.rb
|
291
|
-
- gemfiles/rails4.gemfile
|
292
285
|
- gemfiles/rails5.gemfile
|
286
|
+
- gemfiles/rails6.gemfile
|
293
287
|
- lib/extensions.rb
|
294
288
|
- lib/quick_travel.rb
|
295
289
|
- lib/quick_travel/accommodation.rb
|
@@ -319,6 +313,7 @@ files:
|
|
319
313
|
- lib/quick_travel/init_from_hash.rb
|
320
314
|
- lib/quick_travel/location.rb
|
321
315
|
- lib/quick_travel/mock.rb
|
316
|
+
- lib/quick_travel/package.rb
|
322
317
|
- lib/quick_travel/party.rb
|
323
318
|
- lib/quick_travel/passenger.rb
|
324
319
|
- lib/quick_travel/passenger_price_break.rb
|
@@ -366,6 +361,7 @@ files:
|
|
366
361
|
- spec/country_spec.rb
|
367
362
|
- spec/credit_card_spec.rb
|
368
363
|
- spec/discounts_spec.rb
|
364
|
+
- spec/package_spec.rb
|
369
365
|
- spec/passenger_type_spec.rb
|
370
366
|
- spec/payment_type_spec.rb
|
371
367
|
- spec/price_changes/price_change_spec.rb
|
@@ -396,6 +392,7 @@ files:
|
|
396
392
|
- spec/support/cassettes/booking_price_changes.yml
|
397
393
|
- spec/support/cassettes/booking_show.yml
|
398
394
|
- spec/support/cassettes/booking_update.yml
|
395
|
+
- spec/support/cassettes/booking_with_comments.yml
|
399
396
|
- spec/support/cassettes/booking_with_documents.yml
|
400
397
|
- spec/support/cassettes/booking_with_nested_attributes.yml
|
401
398
|
- spec/support/cassettes/booking_with_price_changes.yml
|
@@ -414,6 +411,8 @@ files:
|
|
414
411
|
- spec/support/cassettes/opal_modern_pay_successful_update_response.yml
|
415
412
|
- spec/support/cassettes/opal_pay.yml
|
416
413
|
- spec/support/cassettes/opal_pay_booking.yml
|
414
|
+
- spec/support/cassettes/package_show.yml
|
415
|
+
- spec/support/cassettes/package_show_product_type.yml
|
417
416
|
- spec/support/cassettes/passenger_all.yml
|
418
417
|
- spec/support/cassettes/payment_info.yml
|
419
418
|
- spec/support/cassettes/price_quote.yml
|
@@ -458,8 +457,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
458
457
|
- !ruby/object:Gem::Version
|
459
458
|
version: '0'
|
460
459
|
requirements: []
|
461
|
-
|
462
|
-
rubygems_version: 2.7.3
|
460
|
+
rubygems_version: 3.1.2
|
463
461
|
signing_key:
|
464
462
|
specification_version: 4
|
465
463
|
summary: Booking process using QuickTravel API
|
@@ -471,6 +469,7 @@ test_files:
|
|
471
469
|
- spec/country_spec.rb
|
472
470
|
- spec/credit_card_spec.rb
|
473
471
|
- spec/discounts_spec.rb
|
472
|
+
- spec/package_spec.rb
|
474
473
|
- spec/passenger_type_spec.rb
|
475
474
|
- spec/payment_type_spec.rb
|
476
475
|
- spec/price_changes/price_change_spec.rb
|
@@ -501,6 +500,7 @@ test_files:
|
|
501
500
|
- spec/support/cassettes/booking_price_changes.yml
|
502
501
|
- spec/support/cassettes/booking_show.yml
|
503
502
|
- spec/support/cassettes/booking_update.yml
|
503
|
+
- spec/support/cassettes/booking_with_comments.yml
|
504
504
|
- spec/support/cassettes/booking_with_documents.yml
|
505
505
|
- spec/support/cassettes/booking_with_nested_attributes.yml
|
506
506
|
- spec/support/cassettes/booking_with_price_changes.yml
|
@@ -519,6 +519,8 @@ test_files:
|
|
519
519
|
- spec/support/cassettes/opal_modern_pay_successful_update_response.yml
|
520
520
|
- spec/support/cassettes/opal_pay.yml
|
521
521
|
- spec/support/cassettes/opal_pay_booking.yml
|
522
|
+
- spec/support/cassettes/package_show.yml
|
523
|
+
- spec/support/cassettes/package_show_product_type.yml
|
522
524
|
- spec/support/cassettes/passenger_all.yml
|
523
525
|
- spec/support/cassettes/payment_info.yml
|
524
526
|
- spec/support/cassettes/price_quote.yml
|