quicktravel_client 3.6.1 → 4.0.0

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.
Files changed (109) hide show
  1. checksums.yaml +5 -5
  2. data/.ruby-version +1 -1
  3. data/.travis.yml +6 -3
  4. data/CHANGELOG.md +36 -3
  5. data/README.md +1 -1
  6. data/gemfiles/rails6.gemfile +8 -0
  7. data/lib/quick_travel.rb +4 -0
  8. data/lib/quick_travel/adapter.rb +19 -81
  9. data/lib/quick_travel/address.rb +4 -2
  10. data/lib/quick_travel/adjustment.rb +3 -2
  11. data/lib/quick_travel/background_check.rb +4 -2
  12. data/lib/quick_travel/bed_configuration.rb +3 -2
  13. data/lib/quick_travel/bed_requirement.rb +3 -2
  14. data/lib/quick_travel/booking.rb +11 -1
  15. data/lib/quick_travel/cache.rb +24 -5
  16. data/lib/quick_travel/checkout.rb +1 -1
  17. data/lib/quick_travel/client.rb +9 -0
  18. data/lib/quick_travel/contact.rb +4 -1
  19. data/lib/quick_travel/init_from_hash.rb +58 -1
  20. data/lib/quick_travel/package.rb +13 -0
  21. data/lib/quick_travel/passenger.rb +7 -2
  22. data/lib/quick_travel/passenger_price_break.rb +3 -2
  23. data/lib/quick_travel/passenger_split.rb +5 -0
  24. data/lib/quick_travel/passenger_type.rb +1 -1
  25. data/lib/quick_travel/product_configuration.rb +1 -1
  26. data/lib/quick_travel/products/base.rb +4 -4
  27. data/lib/quick_travel/property.rb +2 -1
  28. data/lib/quick_travel/property_facility.rb +3 -2
  29. data/lib/quick_travel/reservation.rb +5 -1
  30. data/lib/quick_travel/resource.rb +12 -3
  31. data/lib/quick_travel/resource_category.rb +5 -1
  32. data/lib/quick_travel/resource_group.rb +9 -0
  33. data/lib/quick_travel/room_facility.rb +3 -2
  34. data/lib/quick_travel/route.rb +1 -1
  35. data/lib/quick_travel/route_stop.rb +18 -2
  36. data/lib/quick_travel/service.rb +3 -2
  37. data/lib/quick_travel/version.rb +1 -1
  38. data/quicktravel_client.gemspec +6 -5
  39. data/spec/adapter_spec.rb +36 -5
  40. data/spec/booking_spec.rb +24 -6
  41. data/spec/clients_spec.rb +42 -0
  42. data/spec/discounts_spec.rb +21 -21
  43. data/spec/package_spec.rb +24 -0
  44. data/spec/passenger_type_spec.rb +1 -1
  45. data/spec/product_configuration_spec.rb +11 -0
  46. data/spec/product_spec.rb +5 -5
  47. data/spec/region_spec.rb +2 -2
  48. data/spec/reservation_spec.rb +22 -6
  49. data/spec/spec_helper.rb +6 -3
  50. data/spec/support/cassettes/accommodation_reserve.yml +119 -53
  51. data/spec/support/cassettes/basic_product_scheduled_trips.yml +22 -34
  52. data/spec/support/cassettes/basic_product_scheduled_trips_multi_sector.yml +22 -28
  53. data/spec/support/cassettes/basic_product_scheduled_trips_unbookable.yml +12 -12
  54. data/spec/support/cassettes/booking_activate.yml +31 -30
  55. data/spec/support/cassettes/booking_cancel.yml +31 -30
  56. data/spec/support/cassettes/booking_create.yml +17 -16
  57. data/spec/support/cassettes/booking_create_accommodation.yml +64 -0
  58. data/spec/support/cassettes/booking_documents.yml +12 -12
  59. data/spec/support/cassettes/booking_non_existant.yml +11 -11
  60. data/spec/support/cassettes/booking_price_changes.yml +22 -18
  61. data/spec/support/cassettes/booking_show.yml +16 -15
  62. data/spec/support/cassettes/booking_update.yml +31 -29
  63. data/spec/support/cassettes/booking_with_comments.yml +119 -0
  64. data/spec/support/cassettes/booking_with_documents.yml +41 -38
  65. data/spec/support/cassettes/booking_with_nested_attributes.yml +70 -64
  66. data/spec/support/cassettes/booking_with_price_changes.yml +30 -27
  67. data/spec/support/cassettes/checkout_client_token.yml +14 -14
  68. data/spec/support/cassettes/client_templates.yml +120 -0
  69. data/spec/support/cassettes/countries.yml +18 -94
  70. data/spec/support/cassettes/country_all.yml +18 -94
  71. data/spec/support/cassettes/create_reservation_fail.yml +11 -11
  72. data/spec/support/cassettes/create_reservation_with_booking.yml +18 -17
  73. data/spec/support/cassettes/locations.yml +15 -15
  74. data/spec/support/cassettes/opal_modern_pay_failed_booking.yml +64 -0
  75. data/spec/support/cassettes/opal_modern_pay_failed_create.yml +61 -0
  76. data/spec/support/cassettes/opal_modern_pay_failed_update.yml +59 -0
  77. data/spec/support/cassettes/opal_modern_pay_successful_booking.yml +64 -0
  78. data/spec/support/cassettes/opal_modern_pay_successful_response.yml +61 -0
  79. data/spec/support/cassettes/opal_modern_pay_successful_update_response.yml +61 -0
  80. data/spec/support/cassettes/opal_pay.yml +61 -0
  81. data/spec/support/cassettes/opal_pay_booking.yml +64 -0
  82. data/spec/support/cassettes/package_show.yml +83 -0
  83. data/spec/support/cassettes/package_show_product_type.yml +80 -0
  84. data/spec/support/cassettes/passenger_all.yml +14 -14
  85. data/spec/support/cassettes/payment_info.yml +12 -12
  86. data/spec/support/cassettes/price_quote.yml +23 -23
  87. data/spec/support/cassettes/product_date_range_bookability.yml +35 -49
  88. data/spec/support/cassettes/product_show.yml +16 -18
  89. data/spec/support/cassettes/product_show_as_agent.yml +17 -23
  90. data/spec/support/cassettes/product_type_all.yml +19 -15
  91. data/spec/support/cassettes/product_type_resource_categories.yml +12 -12
  92. data/spec/support/cassettes/product_type_resource_categories_tickets.yml +15 -15
  93. data/spec/support/cassettes/product_type_routes.yml +17 -17
  94. data/spec/support/cassettes/property.yml +19 -19
  95. data/spec/support/cassettes/property_types.yml +15 -15
  96. data/spec/support/cassettes/region_show.yml +14 -14
  97. data/spec/support/cassettes/reservation_resource.yml +64 -0
  98. data/spec/support/cassettes/reservation_with_extra_picks.yml +63 -63
  99. data/spec/support/cassettes/resource_category_all.yml +15 -15
  100. data/spec/support/cassettes/resource_category_all_for_product_type_8.yml +14 -14
  101. data/spec/support/cassettes/resource_fare_bases.yml +21 -24
  102. data/spec/support/cassettes/resource_show.yml +18 -18
  103. data/spec/support/cassettes/resource_with_price.yml +19 -19
  104. data/spec/support/cassettes/settings_basic.yml +12 -12
  105. data/spec/support/cassettes/tenant_switcher.yml +37 -29
  106. data/spec/support/cassettes/wrong_url.yml +28 -47
  107. data/spec/support/coverage_loader.rb +1 -1
  108. metadata +69 -27
  109. data/gemfiles/rails4.gemfile +0 -9
@@ -5,10 +5,12 @@ 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=2099-09-10&access_key=<QT_KEY>
8
+ string: resource_id=4&first_travel_date=2099-09-10
9
9
  headers:
10
10
  Content-Length:
11
11
  - '0'
12
+ X-API-KEY:
13
+ - <QT_KEY>
12
14
  response:
13
15
  status:
14
16
  code: 404
@@ -18,20 +20,18 @@ http_interactions:
18
20
  - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
19
21
  Content-Type:
20
22
  - application/json; charset=utf-8
21
- X-Ua-Compatible:
22
- - IE=Edge,chrome=1
23
23
  Cache-Control:
24
24
  - no-cache
25
25
  X-Request-Id:
26
- - 1ada1db0058d6d86a4df24687468bb12
26
+ - 0287306d-f330-4d48-91ea-3da53858956b
27
27
  X-Runtime:
28
- - '0.225165'
29
- Vary:
30
- - Origin
28
+ - '0.519951'
31
29
  Date:
32
- - Fri, 01 Jan 2016 02:32:39 GMT
30
+ - Fri, 01 Jan 2016 02:32:34 GMT
33
31
  X-Rack-Cache:
34
32
  - invalidate, pass
33
+ Vary:
34
+ - Origin
35
35
  X-Content-Type-Options:
36
36
  - nosniff
37
37
  X-Download-Options:
@@ -49,12 +49,12 @@ http_interactions:
49
49
  Connection:
50
50
  - Keep-Alive
51
51
  Set-Cookie:
52
- - _quick_travel_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJTBmNmVjNDU3OGVkMjY4MTlkN2UyYmMzZTk4OGUwNjczBjsAVEkiCXVzZXIGOwBGaQY%3D--b64e796af441c202e97ba0aeda7bcd682a89e472;
52
+ - _session_id=UHdDcjJYS2NmSVVwY3VVMFQvYUdYQ2g2SGR3YnV5L0JtWHRCd3VXRUhPaFBhbnQwc0JDTzBCOTBtbzR4TDNRMVRWc2VXL21acXpCSGQ1SjR4c0gxN1RQaHFKcVJ2eUl6MnpHNVhGcnJOM0k9LS02aWliZnI5Y1ZKaTNvN1VPbnl1UW1BPT0%3D--8cc41d08686d34f60ae3f015a71c28e58cc31f3d;
53
53
  path=/; HttpOnly
54
54
  body:
55
55
  encoding: UTF-8
56
56
  string: '{"error":"No services selected for [10-09-2099 -- Travel Insurance
57
57
  - Declined -- 0 pax assigned]"}'
58
58
  http_version:
59
- recorded_at: Fri, 28 Oct 2016 05:28:16 GMT
60
- recorded_with: VCR 3.0.3
59
+ recorded_at: Wed, 21 Mar 2018 04:40:41 GMT
60
+ recorded_with: VCR 4.0.0
@@ -5,10 +5,12 @@ 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[1]=2&passenger_types_numbers[2]=1&access_key=<QT_KEY>
8
+ string: resource_id=4&first_travel_date=2016-03-01&passenger_types_numbers[1]=2&passenger_types_numbers[2]=1
9
9
  headers:
10
10
  Content-Length:
11
11
  - '0'
12
+ X-API-KEY:
13
+ - <QT_KEY>
12
14
  response:
13
15
  status:
14
16
  code: 200
@@ -18,22 +20,20 @@ http_interactions:
18
20
  - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
19
21
  Content-Type:
20
22
  - application/json; charset=utf-8
21
- X-Ua-Compatible:
22
- - IE=Edge,chrome=1
23
23
  Etag:
24
- - '"32328bcb7d16793a864c65a57ff52f69"'
24
+ - W/"a4d41818773c0fcb0b1be4863075ec51"
25
25
  Cache-Control:
26
26
  - max-age=0, private, must-revalidate
27
27
  X-Request-Id:
28
- - cd3a5a65cd08794733ac6e9f01af06bf
28
+ - c538ad2c-09c9-431d-91ac-91f3d5bace19
29
29
  X-Runtime:
30
- - '0.579922'
31
- Vary:
32
- - Origin
30
+ - '0.929983'
33
31
  Date:
34
- - Fri, 01 Jan 2016 02:32:39 GMT
32
+ - Fri, 01 Jan 2016 02:32:34 GMT
35
33
  X-Rack-Cache:
36
34
  - invalidate, pass
35
+ Vary:
36
+ - Origin
37
37
  X-Content-Type-Options:
38
38
  - nosniff
39
39
  X-Download-Options:
@@ -47,20 +47,21 @@ http_interactions:
47
47
  Server:
48
48
  - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
49
49
  Content-Length:
50
- - '2020'
50
+ - '2027'
51
51
  Connection:
52
52
  - Keep-Alive
53
53
  Set-Cookie:
54
- - _quick_travel_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJTgzZjdkOTc5NDE3NTdhZDY1Y2QyOTdlOGIzYzY5NDgzBjsAVEkiCXVzZXIGOwBGaQY%3D--33f2dc99b47b872b6547cc7be28522a868c52163;
54
+ - _session_id=NU9mWFp4WExZNWJZMWtSY2s5Znc0SUJMK0tseU1YOXY0UThrczM3MHZZYlJYQ2hFV2ZzZ0ViWTQyVVBqMHRRV0JvVUJYS1Z0Vmp4VlhNQ2c3RzdaMzk3YXZIUkVnaU1hbk41TmJ6VEdFSFk9LS1uazA2R2drV0pOSElORVdQVWo0c2xRPT0%3D--1a6bba2eb597a3a47a5607d2eb93daa9e370332a;
55
55
  path=/; HttpOnly
56
56
  body:
57
57
  encoding: UTF-8
58
- string: '{"id":6,"booking_id":4,"description":"You have declined Travel Insurance
58
+ string: '{"id":7,"booking_id":8,"description":"You have declined Travel Insurance
59
59
  for your booking. If you wish to add Travel Insurance to this booking, please
60
- contact the SeaLink Travel Group on 13 13 01 prior to commencing your travels.","comment":null,"active":true,"service_ids":[7],"resource_id":4,"quantity":null,"adjustments_attributes":[],"complete":true,"reason_not_complete":"","first_reason_not_complete":"","enough_time_before_travel_to_edit":true,"product_type_id":7,"itinerary_footer":true,"fare_basis_set_id":8,"manually_priced":false,"manually_assigned_fare_basis_set":false,"has_fare_basis":true,"fare_basis_season_name":"","fare_basis_pointer_id":4,"pick_up_info":null,"drop_off_info":null,"selection_name":"Travel
61
- Insurance - Declined","product_name_underscore":"travel_insurance","resource_class_name_underscore":"insurance","resource_class_name":"Insurance","has_ticket_template":false,"first_travel_date":{"_type":"Date","_value":"2016-03-01"},"last_travel_date":{"_type":"Date","_value":"2016-03-01"},"durational":true,"duration":1,"duration_units":"Days","date_start_label":"Start
60
+ contact the SeaLink Travel Group on 13 13 01 prior to commencing your travels.","comment":null,"active":true,"service_ids":[7],"resource_id":4,"quantity":null,"adjustments_attributes":[],"complete":true,"reason_not_complete":"","first_reason_not_complete":"","enough_time_before_travel_to_edit":true,"product_type_id":7,"itinerary_footer":true,"fare_basis_set_id":8,"manually_priced":false,"manually_assigned_fare_basis_set":false,"has_fare_basis":true,"fare_basis_season_name":null,"fare_basis_pointer_id":4,"pick_up_info":null,"drop_off_info":null,"selection_name":"Travel
61
+ Insurance - Declined","product_name_underscore":"travel_insurance","resource_class_name_underscore":"insurance","resource_class_name":"Insurance","has_ticket_template":false,"first_travel_date":{"_type":"Date","_value":"2016-03-01"},"last_travel_date":{"_type":"Date","_value":"2016-03-01"},"durational":true,"duration":1,"span":1,"duration_units":"Days","date_start_label":"Start
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
- 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","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":{}}'
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
+ 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":{}}'
64
65
  http_version:
65
- recorded_at: Fri, 28 Oct 2016 05:28:16 GMT
66
- recorded_with: VCR 3.0.3
66
+ recorded_at: Wed, 21 Mar 2018 04:40:41 GMT
67
+ recorded_with: VCR 4.0.0
@@ -5,10 +5,12 @@ http_interactions:
5
5
  uri: http://test.qt.sealink.com.au:8080/locations.json
6
6
  body:
7
7
  encoding: UTF-8
8
- string: access_key=<QT_KEY>
8
+ string: ''
9
9
  headers:
10
10
  Content-Length:
11
11
  - '0'
12
+ X-API-KEY:
13
+ - <QT_KEY>
12
14
  response:
13
15
  status:
14
16
  code: 200
@@ -18,22 +20,20 @@ http_interactions:
18
20
  - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
19
21
  Content-Type:
20
22
  - application/json; charset=utf-8
21
- X-Ua-Compatible:
22
- - IE=Edge,chrome=1
23
23
  Etag:
24
- - '"559340bc8df8e9afa56c4988e50056fd"'
24
+ - W/"754f79cf51e8c12ce69cb529ec2cc991"
25
25
  Cache-Control:
26
26
  - max-age=0, private, must-revalidate
27
27
  X-Request-Id:
28
- - dce465a4771d31fef9a11e7b5c1dd0a5
28
+ - fc0f2979-77c4-4ceb-b96e-44a934bc8284
29
29
  X-Runtime:
30
- - '0.135948'
31
- Vary:
32
- - Origin
30
+ - '0.216302'
33
31
  Date:
34
- - Fri, 01 Jan 2016 02:32:38 GMT
32
+ - Fri, 01 Jan 2016 02:32:32 GMT
35
33
  X-Rack-Cache:
36
34
  - miss
35
+ Vary:
36
+ - Origin
37
37
  X-Content-Type-Options:
38
38
  - nosniff
39
39
  X-Download-Options:
@@ -47,15 +47,15 @@ http_interactions:
47
47
  Server:
48
48
  - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
49
49
  Content-Length:
50
- - '3105'
50
+ - '51'
51
51
  Connection:
52
52
  - Keep-Alive
53
53
  Set-Cookie:
54
- - _quick_travel_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJWMwNjc3NWQ3OGQ4MjYyNDliMzkxNjYxNzQ5ZmJmOTZhBjsAVEkiCXVzZXIGOwBGaQY%3D--c66937bc6407b64b8cf72fc320799d0907d7de31;
54
+ - _session_id=QkFEOTgyZkE5b3pRSm91N3UxTmwrRDRaamVjWHAyVm12YUs1VnYxWUYvMmMwWmN2aGVtMVU1Y1lobnNlcWsvaDY0KzVjTDdzWXpsa013SkdmdUtnUm5HeW5sK0QzVE5DQ3FlVmdHQjFyWFU9LS1NRWY2Z1RKUTN6enMySlQzSGVycG9RPT0%3D--5b49fa19bf5de3e6e55e10e90b2571fa0ad85777;
55
55
  path=/; HttpOnly
56
56
  body:
57
57
  encoding: UTF-8
58
- string: '[{"id":5,"name":"Adelaide CBD","region_ids":[3,19]},{"id":90,"name":"Aldinga Beach","region_ids":[9,19]},{"id":6,"name":"American River","region_ids":[1,19]},{"id":8,"name":"Antechamber Bay","region_ids":[1,19]},{"id":67,"name":"Apollo Bay","region_ids":[11]},{"id":89,"name":"Arkaba","region_ids":[10]},{"id":54,"name":"Ballarat","region_ids":[5]},{"id":10,"name":"Baudin Beach","region_ids":[1,19]},{"id":12,"name":"Brown Beach","region_ids":[1,19]},{"id":11,"name":"Brownlow","region_ids":[1,19]},{"id":37,"name":"Cape Borda","region_ids":[1,19]},{"id":38,"name":"Cape Du Couedic","region_ids":[1,19]},{"id":102,"name":"Cape Hart","region_ids":[1,19]},{"id":2,"name":"Cape Jervis","region_ids":[9,19]},{"id":36,"name":"Cape Willoughby","region_ids":[1,19]},{"id":101,"name":"Cassini","region_ids":[1,19]},{"id":59,"name":"Clare","region_ids":[7,19]},{"id":64,"name":"Coober Pedy","region_ids":[10]},{"id":72,"name":"Coonawarra","region_ids":[14]},{"id":97,"name":"Cygnet River","region_ids":[1,19]}]'
59
- http_version:
60
- recorded_at: Fri, 28 Oct 2016 05:28:14 GMT
61
- recorded_with: VCR 3.0.3
58
+ string: '[{"id":5,"name":"American River","region_ids":[1]}]'
59
+ http_version:
60
+ recorded_at: Wed, 21 Mar 2018 04:40:39 GMT
61
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,64 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://test.qt.sealink.com.au:8080/api/bookings.json
6
+ body:
7
+ encoding: UTF-8
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
+ P3p:
20
+ - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Etag:
24
+ - W/"d552d7792369388633fb16ffff46a095"
25
+ Cache-Control:
26
+ - max-age=0, private, must-revalidate
27
+ X-Request-Id:
28
+ - 1a98afc5-e88d-4227-bf5c-dbba3230a51c
29
+ X-Runtime:
30
+ - '0.186295'
31
+ Date:
32
+ - Fri, 01 Jan 2016 02:32:19 GMT
33
+ X-Rack-Cache:
34
+ - invalidate, pass
35
+ Vary:
36
+ - Origin
37
+ X-Content-Type-Options:
38
+ - nosniff
39
+ X-Download-Options:
40
+ - noopen
41
+ X-Frame-Options:
42
+ - sameorigin
43
+ X-Permitted-Cross-Domain-Policies:
44
+ - none
45
+ X-Xss-Protection:
46
+ - 1; mode=block
47
+ Server:
48
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
49
+ Content-Length:
50
+ - '3271'
51
+ Connection:
52
+ - Keep-Alive
53
+ Set-Cookie:
54
+ - _session_id=cngvUkpDckREMzVsa0tsVkh1WUhZMXNVaDZkeFBYZWJHT0dHVlZ5Q3lJZmxTMHE1THp3Y1RKTHhHdURPdXliWUJEbFg0NWFoSVUwTUczUVlqYUw1Z1FQbk9PTlBMUjdIQUo4Skd1MTEvOEE9LS15Y3I0bTZYOGF4cTBxSTZYRGZJQldnPT0%3D--d1a2d718db994973c142025cdc85260e23b8247d;
55
+ path=/; HttpOnly
56
+ body:
57
+ encoding: UTF-8
58
+ string: '{"id":5,"state":"new","reference":"222229","public_comments":null,"internal_comments":null,"customer_contact_name":null,"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:19.000+10:30","updated_at":"2016-01-01T13:02:19.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":{"currency":["Currency
59
+ has changed to currency AUD. Please set currency as appropriate."]},"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
60
+ 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
61
+ 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":[]}'
62
+ http_version:
63
+ recorded_at: Wed, 21 Mar 2018 04:40:26 GMT
64
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,61 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://test.qt.sealink.com.au:8080/api/checkouts.json
6
+ body:
7
+ encoding: UTF-8
8
+ string: booking_id=5&payment[payment_type_id]=10&payment[amount_in_cents]=10&payment[uid]=modern-opal-failed-uid&payment[comment]=Test%20Opal%20Payment
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
+ P3p:
20
+ - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Etag:
24
+ - W/"82f4920f9d1df287070e5615a996b73c"
25
+ Cache-Control:
26
+ - max-age=0, private, must-revalidate
27
+ X-Request-Id:
28
+ - 53bcf438-dd61-41ff-b2d0-0729d9cbb5bd
29
+ X-Runtime:
30
+ - '0.227102'
31
+ Date:
32
+ - Fri, 01 Jan 2016 02:32:19 GMT
33
+ X-Rack-Cache:
34
+ - invalidate, pass
35
+ Vary:
36
+ - Origin
37
+ X-Content-Type-Options:
38
+ - nosniff
39
+ X-Download-Options:
40
+ - noopen
41
+ X-Frame-Options:
42
+ - sameorigin
43
+ X-Permitted-Cross-Domain-Policies:
44
+ - none
45
+ X-Xss-Protection:
46
+ - 1; mode=block
47
+ Server:
48
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
49
+ Content-Length:
50
+ - '60'
51
+ Connection:
52
+ - Keep-Alive
53
+ Set-Cookie:
54
+ - _session_id=RmIxQ1pzYmZUdTh6cXlvYktNR2NsZ0VZMXIyOUNCSmQ5U3JOdDU4UzhWVXh2b3d2QTAzaTcyVDJZcjRLWmtvUVprL1l0ckcxcVNVc3kxQnNVTWI2dkh5bkZ1SENhR0ZDL0dLWVZXajNhdEU9LS1GNG5ZNENaeUwzUmxsb0VsUyswbDB3PT0%3D--5d7692a0d5a3e8cd63a2a65f193140cd95bb32f3;
55
+ path=/; HttpOnly
56
+ body:
57
+ encoding: UTF-8
58
+ string: '{"checkout_id":"modern-opal-failed-uid","completable":false}'
59
+ http_version:
60
+ recorded_at: Wed, 21 Mar 2018 04:40:26 GMT
61
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,59 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: put
5
+ uri: http://test.qt.sealink.com.au:8080/api/checkouts/modern-opal-failed-uid.json
6
+ body:
7
+ encoding: UTF-8
8
+ string: gateway_response[raw_response]=%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardNumber%22%3A%203085227007682330%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBalance%22%3A%206546%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardSequenceNumber%22%3A%2055%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CILAmount%22%3A%200%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AuthorizedAmount%22%3A%20890%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22SalesReferenceNumber%22%3A%2053183943%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22TransactionDTM%22%3A%20%222018-01-04T09%3A00%3A43.106%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22VoidTransactionReferenceNumber%22%3A%201271099697%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22CardBlockState%22%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22AutoloadAmount%22%3A%200%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D&gateway_response[success]=false&gateway_response[meta_data][applicationInstanceId]=101166&gateway_response[meta_data][operatorId]=an_operator
9
+ headers:
10
+ Content-Length:
11
+ - '0'
12
+ X-API-KEY:
13
+ - <QT_KEY>
14
+ response:
15
+ status:
16
+ code: 422
17
+ message: 'Unprocessable Entity '
18
+ headers:
19
+ P3p:
20
+ - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Cache-Control:
24
+ - no-cache
25
+ X-Request-Id:
26
+ - 5de083d1-cefe-4975-9d69-0ced074c77d3
27
+ X-Runtime:
28
+ - '0.226301'
29
+ Date:
30
+ - Fri, 01 Jan 2016 02:32:20 GMT
31
+ X-Rack-Cache:
32
+ - invalidate, pass
33
+ Vary:
34
+ - Origin
35
+ X-Content-Type-Options:
36
+ - nosniff
37
+ X-Download-Options:
38
+ - noopen
39
+ X-Frame-Options:
40
+ - sameorigin
41
+ X-Permitted-Cross-Domain-Policies:
42
+ - none
43
+ X-Xss-Protection:
44
+ - 1; mode=block
45
+ Server:
46
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
47
+ Content-Length:
48
+ - '33'
49
+ Connection:
50
+ - Keep-Alive
51
+ Set-Cookie:
52
+ - _session_id=ZDdSUFRmOHBJUzcxclRCSTZnZ3ZVQTB6WjFSME9xcm00bTVQOGYzdUE1MWxJT2lMQVFGcnVVVjRlKzFtdFh5MG9qbzRxTkNQVWJCdTFIc1RBdHFVMDF0aVFuMTJBckVwQ0d3Nm5ZQ1Z0RDQ9LS1JdHpYR01FS2ZKMjdyMGVZYlNoOEVBPT0%3D--550f85d051573cefd2393c8bbe45b6f1faa2ad4f;
53
+ path=/; HttpOnly
54
+ body:
55
+ encoding: UTF-8
56
+ string: '{"successful":false,"error":null}'
57
+ http_version:
58
+ recorded_at: Wed, 21 Mar 2018 04:40:27 GMT
59
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,64 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://test.qt.sealink.com.au:8080/api/bookings.json
6
+ body:
7
+ encoding: UTF-8
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
+ P3p:
20
+ - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Etag:
24
+ - W/"b2c692790f400ab0224a5c646cad71be"
25
+ Cache-Control:
26
+ - max-age=0, private, must-revalidate
27
+ X-Request-Id:
28
+ - 75e97302-780f-4f3f-9c48-f19a4bdb4910
29
+ X-Runtime:
30
+ - '0.314651'
31
+ Date:
32
+ - Fri, 01 Jan 2016 02:32:20 GMT
33
+ X-Rack-Cache:
34
+ - invalidate, pass
35
+ Vary:
36
+ - Origin
37
+ X-Content-Type-Options:
38
+ - nosniff
39
+ X-Download-Options:
40
+ - noopen
41
+ X-Frame-Options:
42
+ - sameorigin
43
+ X-Permitted-Cross-Domain-Policies:
44
+ - none
45
+ X-Xss-Protection:
46
+ - 1; mode=block
47
+ Server:
48
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
49
+ Content-Length:
50
+ - '3271'
51
+ Connection:
52
+ - Keep-Alive
53
+ Set-Cookie:
54
+ - _session_id=NS9hVXBXa004TFNCS3ptbmRwZjZzS1I2dWpTd0tBQ1RocDFPMzE3NGxiTkF2RVVEYXZVa0xTUjRsZ01UOG1vUXY0MVI0S1IvbFRublduSUpNN0YrSDFTZVRxa1NIWmJwaWNFeEZtSlN1ZzA9LS1CV0lSNTBVWmtFVzV6OUdXRlRNUVpnPT0%3D--bd295b4fb7d2cef95b096b2e6afd4c00b4359d7a;
55
+ path=/; HttpOnly
56
+ body:
57
+ encoding: UTF-8
58
+ string: '{"id":6,"state":"new","reference":"22222C","public_comments":null,"internal_comments":null,"customer_contact_name":null,"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:20.000+10:30","updated_at":"2016-01-01T13:02:20.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":{"currency":["Currency
59
+ has changed to currency AUD. Please set currency as appropriate."]},"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
60
+ 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
61
+ 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":[]}'
62
+ http_version:
63
+ recorded_at: Wed, 21 Mar 2018 04:40:27 GMT
64
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,61 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://test.qt.sealink.com.au:8080/api/checkouts.json
6
+ body:
7
+ encoding: UTF-8
8
+ string: booking_id=6&payment[payment_type_id]=10&payment[amount_in_cents]=10&payment[uid]=modern-opal-uid&payment[comment]=Test%20Opal%20Payment
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
+ P3p:
20
+ - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Etag:
24
+ - W/"3a5d8871c85df7675b823e4ae118f2dc"
25
+ Cache-Control:
26
+ - max-age=0, private, must-revalidate
27
+ X-Request-Id:
28
+ - 200f1abb-f3fd-4097-a61d-a246cce27252
29
+ X-Runtime:
30
+ - '0.191352'
31
+ Date:
32
+ - Fri, 01 Jan 2016 02:32:20 GMT
33
+ X-Rack-Cache:
34
+ - invalidate, pass
35
+ Vary:
36
+ - Origin
37
+ X-Content-Type-Options:
38
+ - nosniff
39
+ X-Download-Options:
40
+ - noopen
41
+ X-Frame-Options:
42
+ - sameorigin
43
+ X-Permitted-Cross-Domain-Policies:
44
+ - none
45
+ X-Xss-Protection:
46
+ - 1; mode=block
47
+ Server:
48
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
49
+ Content-Length:
50
+ - '53'
51
+ Connection:
52
+ - Keep-Alive
53
+ Set-Cookie:
54
+ - _session_id=Q254b0gvbzhoS05PZjNqM0VEWlBKUlFTVjhsQUZFTVdkZkdOaGlsQnZjSDA1YWZLckh1VmgyN1V6VkRUMlNLR0JIa3U2Y0IvcmZ6dzBGcmJMVzRHNGV3RlJxNHBqV3JLWWU5Z3liRTZXUlU9LS1Tb0hKdktjQWQ5SWl0SElwUEllZUl3PT0%3D--274c0f78030a0c1e450fc81c1683461734cfd3c7;
55
+ path=/; HttpOnly
56
+ body:
57
+ encoding: UTF-8
58
+ string: '{"checkout_id":"modern-opal-uid","completable":false}'
59
+ http_version:
60
+ recorded_at: Wed, 21 Mar 2018 04:40:27 GMT
61
+ recorded_with: VCR 4.0.0