quicktravel_client 2.3.1 → 2.4.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 (57) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +3 -14
  3. data/CHANGELOG.md +6 -0
  4. data/README.md +10 -0
  5. data/gemfiles/rails5.gemfile +8 -0
  6. data/lib/quick_travel/adapter.rb +28 -0
  7. data/lib/quick_travel/adapter_error.rb +11 -3
  8. data/lib/quick_travel/booking.rb +5 -38
  9. data/lib/quick_travel/payment.rb +0 -4
  10. data/lib/quick_travel/products/scheduled_trip.rb +3 -6
  11. data/lib/quick_travel/property.rb +1 -0
  12. data/lib/quick_travel/reservation.rb +5 -27
  13. data/lib/quick_travel/version.rb +1 -1
  14. data/spec/adapter_spec.rb +17 -0
  15. data/spec/booking_spec.rb +11 -0
  16. data/spec/product_type_spec.rb +1 -1
  17. data/spec/reservation_spec.rb +4 -1
  18. data/spec/support/cassettes/basic_product_scheduled_trips.yml +17 -17
  19. data/spec/support/cassettes/basic_product_scheduled_trips_multi_sector.yml +27 -35
  20. data/spec/support/cassettes/basic_product_scheduled_trips_unbookable.yml +17 -17
  21. data/spec/support/cassettes/booking_create.yml +26 -19
  22. data/spec/support/cassettes/booking_documents.yml +23 -16
  23. data/spec/support/cassettes/booking_price_changes.yml +17 -17
  24. data/spec/support/cassettes/booking_show.yml +26 -19
  25. data/spec/support/cassettes/booking_update.yml +51 -36
  26. data/spec/support/cassettes/booking_with_documents.yml +58 -44
  27. data/spec/support/cassettes/booking_with_nested_attributes.yml +94 -73
  28. data/spec/support/cassettes/booking_with_price_changes.yml +33 -33
  29. data/spec/support/cassettes/countries.yml +17 -17
  30. data/spec/support/cassettes/country_all.yml +22 -15
  31. data/spec/support/cassettes/create_reservation_fail.yml +18 -10
  32. data/spec/support/cassettes/create_reservation_with_booking.yml +27 -20
  33. data/spec/support/cassettes/passenger_all.yml +24 -17
  34. data/spec/support/cassettes/payment_info.yml +18 -18
  35. data/spec/support/cassettes/price_quote.yml +43 -41
  36. data/spec/support/cassettes/product_date_range_bookability.yml +26 -16
  37. data/spec/support/cassettes/product_show.yml +22 -15
  38. data/spec/support/cassettes/product_show_as_agent.yml +18 -8
  39. data/spec/support/cassettes/product_type_all.yml +40 -30
  40. data/spec/support/cassettes/product_type_resource_categories.yml +18 -18
  41. data/spec/support/cassettes/product_type_resource_categories_tickets.yml +18 -18
  42. data/spec/support/cassettes/product_type_routes.yml +23 -23
  43. data/spec/support/cassettes/property.yml +21 -21
  44. data/spec/support/cassettes/region_show.yml +22 -15
  45. data/spec/support/cassettes/reservation_with_extra_picks.yml +87 -64
  46. data/spec/support/cassettes/resource_category_all.yml +18 -18
  47. data/spec/support/cassettes/resource_category_all_for_product_type_8.yml +18 -18
  48. data/spec/support/cassettes/resource_fare_bases.yml +29 -20
  49. data/spec/support/cassettes/resource_show.yml +26 -18
  50. data/spec/support/cassettes/resource_with_price.yml +25 -22
  51. data/spec/support/cassettes/tenant_switcher.yml +51 -37
  52. data/spec/support/cassettes/wrong_url.yml +63 -0
  53. data/spec/support/coverage_loader.rb +8 -3
  54. metadata +5 -7
  55. data/gemfiles/rails2.gemfile +0 -11
  56. data/spec/support/cassettes/resource_product_type.yml +0 -63
  57. data/spec/support/cassettes/route_all.yml +0 -65
@@ -19,48 +19,57 @@ http_interactions:
19
19
  Content-Type:
20
20
  - application/json; charset=utf-8
21
21
  X-Ua-Compatible:
22
- - IE=Edge
22
+ - IE=Edge,chrome=1
23
+ Etag:
24
+ - '"f3b17331349cbba7025e60e3ef3c20c4"'
23
25
  Cache-Control:
24
- - no-store, must-revalidate, private, max-age=0
26
+ - max-age=0, private, must-revalidate
25
27
  X-Request-Id:
26
- - a888f1493c39836d9a76249f6e7d03be
28
+ - 25f24512dc4057dd7053a930d1c81f6e
27
29
  X-Runtime:
28
- - '0.063580'
30
+ - '0.094607'
29
31
  Vary:
30
32
  - Origin
33
+ Date:
34
+ - Fri, 01 Jan 2016 02:32:40 GMT
31
35
  X-Rack-Cache:
32
36
  - miss
33
- X-Miniprofiler-Ids:
34
- - '["cb1fhhmviia4g48z9ueg","3n393d46407xjckipoz4","sbzq3sn22o19v6amh4lx","hnsva789t8cmifp64wx3","wmmnukmwie7vr7vj8xqf","2brmax1rs5fwk4fd7n5","dvsmvrl183r0tifnlw46","5o49qsg88hbcsljo43fu","w0wrmi9s9rgua6owkm3z","lxziuvwk5cnyi9wz6zbf"]'
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
35
47
  Server:
36
- - WEBrick/1.3.1 (Ruby/2.2.3/2015-08-18)
37
- Date:
38
- - Mon, 26 Oct 2015 00:18:52 GMT
48
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
39
49
  Content-Length:
40
- - '3494'
50
+ - '3780'
41
51
  Connection:
42
52
  - Keep-Alive
43
53
  Set-Cookie:
44
- - __profilin=p%3Dt; path=/
45
- - __profilin=p%3Dt; path=/
46
- - __profilin=p%3Dt; path=/
47
- - _session_id=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJWJjYWMzN2Y5MGI2ZjdhYWY1ODc3MTVlODllNzg5N2M3BjsAVEkiCXVzZXIGOwBGaQY%3D--f19bbf8bfd4d0418d90d6cf724598c0b2eaaa795;
54
+ - _quick_travel_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJWE3ZTg0Y2I0ODIyOTM0MGU0NThhOWRjNDkyZTFmNjAxBjsAVEkiCXVzZXIGOwBGaQY%3D--06e25fc453458d190110817ac1968586508c475c;
48
55
  path=/; HttpOnly
49
56
  body:
50
57
  encoding: UTF-8
51
58
  string: '[{"id":3,"name":"QBE Travel Insurance - Policy E","product_type_id":7,"default_capacity":null,"type":"Insurance","inventory_type":1,"maximum_occupancy":null,"location_id":null,"property_id":null,"fare_basis_pointer_id":4,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":null,"star_rating":null,"booking_notes":"QBE
52
59
  Travel Insurance Policy E covers the clients up to $1000 for defined unforeseen
53
- cancellations and additional expenses.","expiry_units":null,"uses":null,"inline_price_in_cents":null,"inline_cost_in_cents":null,"expiry_level":null,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":null,"created_at":"2014-09-12T17:10:47+09:30","updated_at":"2014-09-12T17:10:55+09:30","code":"","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":19,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":false,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":false,"individual_tickets":null,"frequent_traveller_redemption_rate":null,"position":null,"client_type_ids":[],"category":null,"location":"","current_description":"\u003Cp\u003E\u003Cspan
60
+ cancellations and additional expenses.","expiry_units":null,"uses":null,"inline_price_in_cents":null,"inline_cost_in_cents":null,"expiry_level":null,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":null,"created_at":"2014-09-12T17:10:47+09:30","updated_at":"2014-09-12T17:10:55+09:30","code":"","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":19,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":false,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":false,"individual_tickets":null,"frequent_traveller_redemption_rate":null,"position":null,"ticket_template_id":null,"generate_tickets_by_quantity":true,"to_s":"QBE
61
+ Travel Insurance - Policy E","client_type_ids":[],"category":null,"location":"","current_description":"\u003Cp\u003E\u003Cspan
54
62
  class=\"caps\"\u003EQBE\u003C/span\u003E Travel Insurance Policy E known as
55
63
  the \u0026#8216;Australian Cancellation and Additional Expenses\u0026#8217;
56
64
  plan has been included into this booking. This covers you for defined unforeseen
57
65
  cancellations and additional expenses. Please refer to the Product Disclosure
58
- Statement for further information.\u003C/p\u003E","graphics":[],"graphic_names":[]},{"id":4,"name":"Travel
66
+ Statement for further information.\u003C/p\u003E","graphics":[],"graphic_names":[],"ticket_template":null,"expiry_days":null},{"id":4,"name":"Travel
59
67
  Insurance - Declined","product_type_id":7,"default_capacity":null,"type":"Insurance","inventory_type":1,"maximum_occupancy":null,"location_id":null,"property_id":null,"fare_basis_pointer_id":4,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":null,"star_rating":null,"booking_notes":"This
60
- is only to be used if the clients have declined Travel Insurance.","expiry_units":null,"uses":null,"inline_price_in_cents":null,"inline_cost_in_cents":null,"expiry_level":null,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":null,"created_at":"2014-09-12T17:12:11+09:30","updated_at":"2013-03-01T00:17:12+10:30","code":"","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":false,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":false,"individual_tickets":null,"frequent_traveller_redemption_rate":null,"position":null,"client_type_ids":[],"category":null,"location":"","current_description":"\u003Cp\u003EYou
68
+ is only to be used if the clients have declined Travel Insurance.","expiry_units":null,"uses":null,"inline_price_in_cents":null,"inline_cost_in_cents":null,"expiry_level":null,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":null,"created_at":"2014-09-12T17:12:11+09:30","updated_at":"2013-03-01T00:17:12+10:30","code":"","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":false,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":false,"individual_tickets":null,"frequent_traveller_redemption_rate":null,"position":null,"ticket_template_id":null,"generate_tickets_by_quantity":true,"to_s":"Travel
69
+ Insurance - Declined","client_type_ids":[],"category":null,"location":"","current_description":"\u003Cp\u003EYou
61
70
  have declined Travel Insurance for your booking. If you wish to add Travel
62
71
  Insurance to this booking, please contact the SeaLink Travel Group on 13 13
63
- 01 prior to commencing your travels.\u003C/p\u003E","graphics":[],"graphic_names":[]}]'
72
+ 01 prior to commencing your travels.\u003C/p\u003E","graphics":[],"graphic_names":[],"ticket_template":null,"expiry_days":null}]'
64
73
  http_version:
65
- recorded_at: Mon, 26 Oct 2015 00:18:52 GMT
66
- recorded_with: VCR 2.9.3
74
+ recorded_at: Fri, 28 Oct 2016 05:28:17 GMT
75
+ recorded_with: VCR 3.0.3
@@ -19,38 +19,46 @@ http_interactions:
19
19
  Content-Type:
20
20
  - application/json; charset=utf-8
21
21
  X-Ua-Compatible:
22
- - IE=Edge
22
+ - IE=Edge,chrome=1
23
+ Etag:
24
+ - '"d1e1e0f8d3920bd1435fd4b44b17f60f"'
23
25
  Cache-Control:
24
- - no-store, must-revalidate, private, max-age=0
26
+ - max-age=0, private, must-revalidate
25
27
  X-Request-Id:
26
- - d51ad9bad61e17a0c9464722edf61921
28
+ - 84117d9e1f5bd338cbb38af3566053a1
27
29
  X-Runtime:
28
- - '0.062933'
30
+ - '0.093168'
29
31
  Vary:
30
32
  - Origin
33
+ Date:
34
+ - Fri, 01 Jan 2016 02:32:40 GMT
31
35
  X-Rack-Cache:
32
36
  - miss
33
- X-Miniprofiler-Ids:
34
- - '["2a6vuz8r4il0kc57pwgg","3n393d46407xjckipoz4","sbzq3sn22o19v6amh4lx","hnsva789t8cmifp64wx3","wmmnukmwie7vr7vj8xqf","2brmax1rs5fwk4fd7n5","dvsmvrl183r0tifnlw46","5o49qsg88hbcsljo43fu","w0wrmi9s9rgua6owkm3z","lxziuvwk5cnyi9wz6zbf"]'
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
35
47
  Server:
36
- - WEBrick/1.3.1 (Ruby/2.2.3/2015-08-18)
37
- Date:
38
- - Mon, 26 Oct 2015 00:18:51 GMT
48
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
39
49
  Content-Length:
40
- - '1413'
50
+ - '1556'
41
51
  Connection:
42
52
  - Keep-Alive
43
53
  Set-Cookie:
44
- - __profilin=p%3Dt; path=/
45
- - __profilin=p%3Dt; path=/
46
- - __profilin=p%3Dt; path=/
47
- - _session_id=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJTk1YWVkNDUzOGM0ODFlZjg2NjI5ZDdkZjNlMWI1NmQ4BjsAVEkiCXVzZXIGOwBGaQY%3D--03521ff3da28a669ffd25a78c1a73fd4d879c15a;
54
+ - _quick_travel_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJWFmNTllNzdlNTRjMGU2YzkxZDkwNThiY2JhMTcxODkzBjsAVEkiCXVzZXIGOwBGaQY%3D--3234d338cf6ce10667c99c802eb01a98660c84e6;
48
55
  path=/; HttpOnly
49
56
  body:
50
57
  encoding: UTF-8
51
- string: '{"id":6,"name":"Executive Room","product_type_id":2,"default_capacity":2,"type":"Accommodation","inventory_type":0,"maximum_occupancy":2,"location_id":1,"property_id":1,"fare_basis_pointer_id":6,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":1,"star_rating":null,"booking_notes":"","expiry_units":null,"uses":null,"inline_price_in_cents":null,"inline_cost_in_cents":null,"expiry_level":null,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":null,"created_at":"2013-03-01T00:08:49+10:30","updated_at":"2013-03-01T00:55:56+10:30","code":"","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":false,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":false,"individual_tickets":null,"frequent_traveller_redemption_rate":null,"position":null,"client_type_ids":[],"category":null,"location":"Adelaide
58
+ string: '{"id":6,"name":"Executive Room","product_type_id":2,"default_capacity":2,"type":"Accommodation","inventory_type":0,"maximum_occupancy":2,"location_id":1,"property_id":1,"fare_basis_pointer_id":6,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":1,"star_rating":null,"booking_notes":"","expiry_units":null,"uses":null,"inline_price_in_cents":null,"inline_cost_in_cents":null,"expiry_level":null,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":null,"created_at":"2013-03-01T00:08:49+10:30","updated_at":"2013-03-01T00:55:56+10:30","code":"","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":false,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":false,"individual_tickets":null,"frequent_traveller_redemption_rate":null,"position":null,"ticket_template_id":null,"generate_tickets_by_quantity":true,"to_s":"Hilton
59
+ Hotel - Executive Room","client_type_ids":[],"category":null,"location":"Adelaide
52
60
  CBD","current_description":"\u003Cp\u003EA basic studio room\u003C/p\u003E","graphics":[],"graphic_names":[],"property_name":"Hilton
53
- Hotel"}'
61
+ Hotel","ticket_template":null,"expiry_days":null}'
54
62
  http_version:
55
- recorded_at: Mon, 26 Oct 2015 00:18:51 GMT
56
- recorded_with: VCR 2.9.3
63
+ recorded_at: Fri, 28 Oct 2016 05:28:17 GMT
64
+ recorded_with: VCR 3.0.3
@@ -14,16 +14,6 @@ http_interactions:
14
14
  code: 200
15
15
  message: 'OK '
16
16
  headers:
17
- X-Frame-Options:
18
- - SAMEORIGIN
19
- X-Xss-Protection:
20
- - '1'
21
- X-Content-Type-Options:
22
- - nosniff
23
- X-Download-Options:
24
- - noopen
25
- X-Permitted-Cross-Domain-Policies:
26
- - none
27
17
  P3p:
28
18
  - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
29
19
  Content-Type:
@@ -31,33 +21,46 @@ http_interactions:
31
21
  X-Ua-Compatible:
32
22
  - IE=Edge,chrome=1
33
23
  Etag:
34
- - '"bb1d26de241b81d26f40904a269d8e56"'
24
+ - '"4021e9c5ee2443266c0cff2a606de158"'
35
25
  Cache-Control:
36
26
  - max-age=0, private, must-revalidate
37
27
  X-Request-Id:
38
- - 9591c5d94258db0d9fb4859e0c22fd36
28
+ - 4d20d16ecfa3816287c45e7b885cc4d6
39
29
  X-Runtime:
40
- - '0.142174'
30
+ - '0.106900'
41
31
  Vary:
42
32
  - Origin
43
33
  Date:
44
- - Thu, 28 Feb 2013 13:30:18 GMT
34
+ - Fri, 01 Jan 2016 02:32:40 GMT
45
35
  X-Rack-Cache:
46
36
  - miss
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
47
  Server:
48
- - WEBrick/1.3.1 (Ruby/2.2.4/2015-12-16)
48
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
49
49
  Content-Length:
50
- - '3815'
50
+ - '4895'
51
51
  Connection:
52
52
  - Keep-Alive
53
53
  Set-Cookie:
54
- - _session_id=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJTQxNWVlY2QxMGJhOTgwM2Y2MTEwYzY5M2RkOTUzMDFiBjsAVEkiCXVzZXIGOwBGaQY%3D--ecffeb7fcbe10f9d3422590fb09ac6e40414e338;
54
+ - _quick_travel_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJWMxYTgzNmQ2MTdiMzRhYzRiMzBlMGJkMzhiMzhhNDJmBjsAVEkiCXVzZXIGOwBGaQY%3D--1cc254b42d691db0988afc5e493189f2ddc0d030;
55
55
  path=/; HttpOnly
56
56
  body:
57
57
  encoding: UTF-8
58
- string: '[{"id":7,"name":"Adult Return","product_type_id":5,"default_capacity":null,"type":"Ticket","inventory_type":1,"maximum_occupancy":null,"location_id":null,"property_id":null,"fare_basis_pointer_id":null,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":null,"star_rating":null,"booking_notes":"","expiry_units":"days","uses":2,"inline_price_in_cents":3200,"inline_cost_in_cents":0,"expiry_level":30,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":1,"created_at":"2015-08-25T14:22:46+09:30","updated_at":"2015-08-25T14:22:46+09:30","code":"2AD","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":true,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":true,"individual_tickets":false,"frequent_traveller_redemption_rate":null,"position":null,"todays_price_in_cents":3200,"child_resources":[]},{"id":8,"name":"Concession
59
- Return","product_type_id":5,"default_capacity":null,"type":"Ticket","inventory_type":1,"maximum_occupancy":null,"location_id":null,"property_id":null,"fare_basis_pointer_id":null,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":null,"star_rating":null,"booking_notes":"","expiry_units":"days","uses":2,"inline_price_in_cents":1600,"inline_cost_in_cents":0,"expiry_level":30,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":1,"created_at":"2015-08-25T14:24:45+09:30","updated_at":"2015-08-25T14:24:45+09:30","code":"2CON","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":true,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":true,"individual_tickets":false,"frequent_traveller_redemption_rate":null,"position":null,"todays_price_in_cents":1600,"child_resources":[]},{"id":9,"name":"Student
60
- Flexi","product_type_id":5,"default_capacity":null,"type":"Ticket","inventory_type":1,"maximum_occupancy":null,"location_id":null,"property_id":null,"fare_basis_pointer_id":null,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":null,"star_rating":null,"booking_notes":"","expiry_units":"days","uses":2,"inline_price_in_cents":6800,"inline_cost_in_cents":0,"expiry_level":30,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":2,"created_at":"2015-08-25T14:25:43+09:30","updated_at":"2015-08-25T14:25:43+09:30","code":"10STU","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":true,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":false,"individual_tickets":false,"frequent_traveller_redemption_rate":null,"position":null,"todays_price_in_cents":6800,"child_resources":[]}]'
58
+ string: '[{"id":7,"name":"Adult Return","product_type_id":5,"default_capacity":null,"type":"Item","inventory_type":1,"maximum_occupancy":null,"location_id":null,"property_id":null,"fare_basis_pointer_id":null,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":null,"star_rating":null,"booking_notes":"","expiry_units":"days","uses":2,"inline_price_in_cents":3200,"inline_cost_in_cents":0,"expiry_level":30,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":1,"created_at":"2015-08-25T14:22:46+09:30","updated_at":"2016-07-13T09:44:55+09:30","code":"2AD","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":true,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":true,"individual_tickets":false,"frequent_traveller_redemption_rate":null,"position":null,"ticket_template_id":1,"generate_tickets_by_quantity":true,"todays_price_in_cents":3200,"todays_price_with_rules_in_cents":3200,"applied_rules":[],"description":"","ticket_template":{"activation_trigger":"travel_date","created_at":"2016-07-13T09:44:55+09:30","expiry_days":30,"id":1,"maximum_uses":2,"name":"2
59
+ uses, 30 days expiry","updated_at":"2016-07-13T09:44:55+09:30"},"expiry_days":30,"child_resources":[]},{"id":8,"name":"Concession
60
+ Return","product_type_id":5,"default_capacity":null,"type":"Item","inventory_type":1,"maximum_occupancy":null,"location_id":null,"property_id":null,"fare_basis_pointer_id":null,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":null,"star_rating":null,"booking_notes":"","expiry_units":"days","uses":2,"inline_price_in_cents":1600,"inline_cost_in_cents":0,"expiry_level":30,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":1,"created_at":"2015-08-25T14:24:45+09:30","updated_at":"2016-07-13T09:44:55+09:30","code":"2CON","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":true,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":true,"individual_tickets":false,"frequent_traveller_redemption_rate":null,"position":null,"ticket_template_id":1,"generate_tickets_by_quantity":true,"todays_price_in_cents":1600,"todays_price_with_rules_in_cents":1600,"applied_rules":[],"description":"","ticket_template":{"activation_trigger":"travel_date","created_at":"2016-07-13T09:44:55+09:30","expiry_days":30,"id":1,"maximum_uses":2,"name":"2
61
+ uses, 30 days expiry","updated_at":"2016-07-13T09:44:55+09:30"},"expiry_days":30,"child_resources":[]},{"id":9,"name":"Student
62
+ Flexi","product_type_id":5,"default_capacity":null,"type":"Item","inventory_type":1,"maximum_occupancy":null,"location_id":null,"property_id":null,"fare_basis_pointer_id":null,"disclaimer_id":null,"deposit_rule_id":null,"vendor_id":null,"maximum_weight":null,"days_before_inventory_expires":null,"property_type_id":null,"star_rating":null,"booking_notes":"","expiry_units":"days","uses":2,"inline_price_in_cents":6800,"inline_cost_in_cents":0,"expiry_level":30,"unlimited_uses":false,"no_expiry":false,"reason_required":false,"resource_category_id":2,"created_at":"2015-08-25T14:25:43+09:30","updated_at":"2016-07-13T09:44:55+09:30","code":"10STU","restrict_to_client_types":false,"minimum_age":null,"guardian_minimum_age":null,"book_before_level":null,"book_before_units":"seconds","maximum_passengers_online":null,"active":true,"report_changes":false,"inline_pricing":true,"bookable_individually":true,"minimum_passengers":null,"maximum_passengers":null,"required_number_of_vehicles":null,"frequent_traveller_points_multiplier":null,"commissionable":true,"masterpoint_resource_id":null,"print_tickets":false,"individual_tickets":false,"frequent_traveller_redemption_rate":null,"position":null,"ticket_template_id":1,"generate_tickets_by_quantity":true,"todays_price_in_cents":6800,"todays_price_with_rules_in_cents":6800,"applied_rules":[],"description":"","ticket_template":{"activation_trigger":"travel_date","created_at":"2016-07-13T09:44:55+09:30","expiry_days":30,"id":1,"maximum_uses":2,"name":"2
63
+ uses, 30 days expiry","updated_at":"2016-07-13T09:44:55+09:30"},"expiry_days":30,"child_resources":[]}]'
61
64
  http_version:
62
- recorded_at: Thu, 07 Apr 2016 06:51:59 GMT
63
- recorded_with: VCR 3.0.1
65
+ recorded_at: Fri, 28 Oct 2016 05:28:17 GMT
66
+ recorded_with: VCR 3.0.3
@@ -19,40 +19,47 @@ http_interactions:
19
19
  Content-Type:
20
20
  - application/json; charset=utf-8
21
21
  X-Ua-Compatible:
22
- - IE=Edge
22
+ - IE=Edge,chrome=1
23
+ Etag:
24
+ - '"3ff67a732ba04673f7461eccd9b919ed"'
23
25
  Cache-Control:
24
- - no-store, must-revalidate, private, max-age=0
26
+ - max-age=0, private, must-revalidate
25
27
  X-Request-Id:
26
- - 67e534623458a7d42a917b0222e97400
28
+ - 14eda6d265f2e49defc392ff37f5d201
27
29
  X-Runtime:
28
- - '0.086951'
30
+ - '0.086428'
29
31
  Vary:
30
32
  - Origin
33
+ Date:
34
+ - Fri, 01 Jan 2016 02:32:40 GMT
31
35
  X-Rack-Cache:
32
36
  - miss
33
- X-Miniprofiler-Ids:
34
- - '["aqfwnpkw3y59qtm211zk","3n393d46407xjckipoz4","sbzq3sn22o19v6amh4lx","hnsva789t8cmifp64wx3","wmmnukmwie7vr7vj8xqf","2brmax1rs5fwk4fd7n5","dvsmvrl183r0tifnlw46","5o49qsg88hbcsljo43fu","w0wrmi9s9rgua6owkm3z","lxziuvwk5cnyi9wz6zbf"]'
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
35
47
  Server:
36
- - WEBrick/1.3.1 (Ruby/2.2.3/2015-08-18)
37
- Date:
38
- - Mon, 26 Oct 2015 00:18:52 GMT
48
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
39
49
  Content-Length:
40
- - '4799'
50
+ - '5576'
41
51
  Connection:
42
52
  - Keep-Alive
43
53
  Set-Cookie:
44
- - __profilin=p%3Dt; path=/
45
- - __profilin=p%3Dt; path=/
46
- - __profilin=p%3Dt; path=/
47
- - _session_id=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJWNkZWM2M2M2MTdiY2M3NTU4ZDZiNmU4OWM0YTY0MzQyBjsAVEkiCXVzZXIGOwBGaQY%3D--07e407f62950a5418bfbd060d44bcf63b4ba76c7;
54
+ - _quick_travel_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJTI3MmIxNmU0YWE3NTZmYzUzOTQ3MTBmMjNlODM0OTVjBjsAVEkiCXVzZXIGOwBGaQY%3D--d3c6d8263debc308d98297e7325bc71919307a83;
48
55
  path=/; HttpOnly
49
56
  body:
50
57
  encoding: UTF-8
51
- string: '[{"id":1,"name":"Ferry","resource_class_name":"Ship","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":2,"name":"Accommodation","resource_class_name":"Accommodation","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":3,"name":"Flight","resource_class_name":"ScheduledTripResource","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":4,"name":"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":5,"name":"Ticket","resource_class_name":"Ticket","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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":6,"name":"Mainland
52
- Coach Transfers","resource_class_name":"ScheduledTripResource","disclaimer_id":null,"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":"2013-03-01T01:33:37+10:30","updated_at":"2013-03-01T01:33:37+10:30","code":"","can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":7,"name":"Travel
53
- Insurance","resource_class_name":"Insurance","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":["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":true,"created_at":"2014-09-12T17:06:45+09:30","updated_at":"2014-09-12T17:06:45+09:30","code":"","can_have_quantity":false,"can_have_dates":true,"needs_passengers":false},{"id":8,"name":"Merchandise","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":["reservation_group_id","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":"2015-08-25T15:10:06+09:30","updated_at":"2015-08-25T15:10:06+09:30","code":"","can_have_quantity":true,"can_have_dates":false,"needs_passengers":false}]'
58
+ string: '[{"id":1,"name":"Ferry","resource_class_name":"Ship","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":2,"name":"Accommodation","resource_class_name":"Accommodation","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":3,"name":"Flight","resource_class_name":"ScheduledTripResource","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":4,"name":"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":false,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":5,"name":"Ticket","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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":false,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":6,"name":"Mainland
59
+ Coach Transfers","resource_class_name":"ScheduledTripResource","disclaimer_id":null,"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":"2013-03-01T01:33:37+10:30","updated_at":"2013-03-01T01:33:37+10:30","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":7,"name":"Travel
60
+ Insurance","resource_class_name":"Insurance","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":["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":true,"created_at":"2014-09-12T17:06:45+09:30","updated_at":"2014-09-12T17:06:45+09:30","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":false},{"id":8,"name":"Merchandise","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":["reservation_group_id","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":"2015-08-25T15:10:06+09:30","updated_at":"2015-08-25T15:10:06+09:30","code":"","needs_services":false,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":9,"name":"Cruise","resource_class_name":"GenericResource","disclaimer_id":null,"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":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2016-05-11T12:10:20+09:30","updated_at":"2016-05-11T12:10:20+09:30","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true}]'
54
61
  http_version:
55
- recorded_at: Mon, 26 Oct 2015 00:18:52 GMT
62
+ recorded_at: Fri, 28 Oct 2016 05:28:17 GMT
56
63
  - request:
57
64
  method: get
58
65
  uri: http://test.qt.other.com.au:8080/api/product_types.json
@@ -72,38 +79,45 @@ http_interactions:
72
79
  Content-Type:
73
80
  - application/json; charset=utf-8
74
81
  X-Ua-Compatible:
75
- - IE=Edge
82
+ - IE=Edge,chrome=1
83
+ Etag:
84
+ - '"3ff67a732ba04673f7461eccd9b919ed"'
76
85
  Cache-Control:
77
- - no-store, must-revalidate, private, max-age=0
86
+ - max-age=0, private, must-revalidate
78
87
  X-Request-Id:
79
- - eb8495af40f2abe809d68616a5746b49
88
+ - c65d177ee2b1977083d9043c5909f100
80
89
  X-Runtime:
81
- - '0.079787'
90
+ - '0.075303'
82
91
  Vary:
83
92
  - Origin
93
+ Date:
94
+ - Fri, 01 Jan 2016 02:32:41 GMT
84
95
  X-Rack-Cache:
85
96
  - miss
86
- X-Miniprofiler-Ids:
87
- - '["8glh8apmwrgyt6d05c82","3n393d46407xjckipoz4","sbzq3sn22o19v6amh4lx","hnsva789t8cmifp64wx3","wmmnukmwie7vr7vj8xqf","2brmax1rs5fwk4fd7n5","dvsmvrl183r0tifnlw46","5o49qsg88hbcsljo43fu","w0wrmi9s9rgua6owkm3z","lxziuvwk5cnyi9wz6zbf"]'
97
+ X-Content-Type-Options:
98
+ - nosniff
99
+ X-Download-Options:
100
+ - noopen
101
+ X-Frame-Options:
102
+ - sameorigin
103
+ X-Permitted-Cross-Domain-Policies:
104
+ - none
105
+ X-Xss-Protection:
106
+ - 1; mode=block
88
107
  Server:
89
- - WEBrick/1.3.1 (Ruby/2.2.3/2015-08-18)
90
- Date:
91
- - Mon, 26 Oct 2015 00:18:52 GMT
108
+ - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
92
109
  Content-Length:
93
- - '4799'
110
+ - '5576'
94
111
  Connection:
95
112
  - Keep-Alive
96
113
  Set-Cookie:
97
- - __profilin=p%3Dt; path=/
98
- - __profilin=p%3Dt; path=/
99
- - __profilin=p%3Dt; path=/
100
- - _session_id=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJTFlY2Q0YzZhMDJlMTkxY2Y5ODM2MGZhYjE0Nzk4NDA3BjsAVEkiCXVzZXIGOwBGaQY%3D--b960d2b4ab390e1ef5e60d4a9c730eb08a7d512d;
114
+ - _quick_travel_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJTQ2ZDFmYjJhNmY2NjJhMzdkMWM1ZGYwMDg4NDBkOThkBjsAVEkiCXVzZXIGOwBGaQY%3D--5c7357e5c89d006af101ad940fea5616ac6bdad3;
101
115
  path=/; HttpOnly
102
116
  body:
103
117
  encoding: UTF-8
104
- string: '[{"id":1,"name":"Ferry","resource_class_name":"Ship","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":2,"name":"Accommodation","resource_class_name":"Accommodation","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":3,"name":"Flight","resource_class_name":"ScheduledTripResource","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":4,"name":"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":5,"name":"Ticket","resource_class_name":"Ticket","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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":6,"name":"Mainland
105
- Coach Transfers","resource_class_name":"ScheduledTripResource","disclaimer_id":null,"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":"2013-03-01T01:33:37+10:30","updated_at":"2013-03-01T01:33:37+10:30","code":"","can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":7,"name":"Travel
106
- Insurance","resource_class_name":"Insurance","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":["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":true,"created_at":"2014-09-12T17:06:45+09:30","updated_at":"2014-09-12T17:06:45+09:30","code":"","can_have_quantity":false,"can_have_dates":true,"needs_passengers":false},{"id":8,"name":"Merchandise","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":["reservation_group_id","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":"2015-08-25T15:10:06+09:30","updated_at":"2015-08-25T15:10:06+09:30","code":"","can_have_quantity":true,"can_have_dates":false,"needs_passengers":false}]'
118
+ string: '[{"id":1,"name":"Ferry","resource_class_name":"Ship","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":2,"name":"Accommodation","resource_class_name":"Accommodation","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":3,"name":"Flight","resource_class_name":"ScheduledTripResource","disclaimer_id":null,"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":4,"name":"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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":false,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":5,"name":"Ticket","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":null,"maximum_passengers_online":null,"confirmation_request_fields":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":null,"created_at":null,"updated_at":null,"code":null,"needs_services":false,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":6,"name":"Mainland
119
+ Coach Transfers","resource_class_name":"ScheduledTripResource","disclaimer_id":null,"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":"2013-03-01T01:33:37+10:30","updated_at":"2013-03-01T01:33:37+10:30","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true},{"id":7,"name":"Travel
120
+ Insurance","resource_class_name":"Insurance","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":["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":true,"created_at":"2014-09-12T17:06:45+09:30","updated_at":"2014-09-12T17:06:45+09:30","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":false},{"id":8,"name":"Merchandise","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":["reservation_group_id","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":"2015-08-25T15:10:06+09:30","updated_at":"2015-08-25T15:10:06+09:30","code":"","needs_services":false,"can_have_quantity":true,"can_have_dates":false,"needs_passengers":false},{"id":9,"name":"Cruise","resource_class_name":"GenericResource","disclaimer_id":null,"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":[],"only_bookable_with_accommodation":false,"footer_itinerary_item":false,"created_at":"2016-05-11T12:10:20+09:30","updated_at":"2016-05-11T12:10:20+09:30","code":"","needs_services":true,"can_have_quantity":false,"can_have_dates":true,"needs_passengers":true}]'
107
121
  http_version:
108
- recorded_at: Mon, 26 Oct 2015 00:18:52 GMT
109
- recorded_with: VCR 2.9.3
122
+ recorded_at: Fri, 28 Oct 2016 05:28:17 GMT
123
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,63 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.google.com/
6
+ body:
7
+ encoding: UTF-8
8
+ string: access_key=<QT_KEY>
9
+ headers:
10
+ Content-Length:
11
+ - '0'
12
+ response:
13
+ status:
14
+ code: 400
15
+ message: Bad Request
16
+ headers:
17
+ Content-Type:
18
+ - text/html; charset=UTF-8
19
+ Content-Length:
20
+ - '1555'
21
+ Date:
22
+ - Fri, 28 Oct 2016 05:28:05 GMT
23
+ body:
24
+ encoding: ASCII-8BIT
25
+ string: !binary |-
26
+ PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ZW4+CiAgPG1ldGEgY2hhcnNl
27
+ dD11dGYtOD4KICA8bWV0YSBuYW1lPXZpZXdwb3J0IGNvbnRlbnQ9ImluaXRp
28
+ YWwtc2NhbGU9MSwgbWluaW11bS1zY2FsZT0xLCB3aWR0aD1kZXZpY2Utd2lk
29
+ dGgiPgogIDx0aXRsZT5FcnJvciA0MDAgKEJhZCBSZXF1ZXN0KSEhMTwvdGl0
30
+ bGU+CiAgPHN0eWxlPgogICAgKnttYXJnaW46MDtwYWRkaW5nOjB9aHRtbCxj
31
+ b2Rle2ZvbnQ6MTVweC8yMnB4IGFyaWFsLHNhbnMtc2VyaWZ9aHRtbHtiYWNr
32
+ Z3JvdW5kOiNmZmY7Y29sb3I6IzIyMjtwYWRkaW5nOjE1cHh9Ym9keXttYXJn
33
+ aW46NyUgYXV0byAwO21heC13aWR0aDozOTBweDttaW4taGVpZ2h0OjE4MHB4
34
+ O3BhZGRpbmc6MzBweCAwIDE1cHh9KiA+IGJvZHl7YmFja2dyb3VuZDp1cmwo
35
+ Ly93d3cuZ29vZ2xlLmNvbS9pbWFnZXMvZXJyb3JzL3JvYm90LnBuZykgMTAw
36
+ JSA1cHggbm8tcmVwZWF0O3BhZGRpbmctcmlnaHQ6MjA1cHh9cHttYXJnaW46
37
+ MTFweCAwIDIycHg7b3ZlcmZsb3c6aGlkZGVufWluc3tjb2xvcjojNzc3O3Rl
38
+ eHQtZGVjb3JhdGlvbjpub25lfWEgaW1ne2JvcmRlcjowfUBtZWRpYSBzY3Jl
39
+ ZW4gYW5kIChtYXgtd2lkdGg6NzcycHgpe2JvZHl7YmFja2dyb3VuZDpub25l
40
+ O21hcmdpbi10b3A6MDttYXgtd2lkdGg6bm9uZTtwYWRkaW5nLXJpZ2h0OjB9
41
+ fSNsb2dve2JhY2tncm91bmQ6dXJsKC8vd3d3Lmdvb2dsZS5jb20vaW1hZ2Vz
42
+ L2JyYW5kaW5nL2dvb2dsZWxvZ28vMXgvZ29vZ2xlbG9nb19jb2xvcl8xNTB4
43
+ NTRkcC5wbmcpIG5vLXJlcGVhdDttYXJnaW4tbGVmdDotNXB4fUBtZWRpYSBv
44
+ bmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOjE5MmRwaSl7I2xvZ297
45
+ YmFja2dyb3VuZDp1cmwoLy93d3cuZ29vZ2xlLmNvbS9pbWFnZXMvYnJhbmRp
46
+ bmcvZ29vZ2xlbG9nby8yeC9nb29nbGVsb2dvX2NvbG9yXzE1MHg1NGRwLnBu
47
+ Zykgbm8tcmVwZWF0IDAlIDAlLzEwMCUgMTAwJTstbW96LWJvcmRlci1pbWFn
48
+ ZTp1cmwoLy93d3cuZ29vZ2xlLmNvbS9pbWFnZXMvYnJhbmRpbmcvZ29vZ2xl
49
+ bG9nby8yeC9nb29nbGVsb2dvX2NvbG9yXzE1MHg1NGRwLnBuZykgMH19QG1l
50
+ ZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVs
51
+ LXJhdGlvOjIpeyNsb2dve2JhY2tncm91bmQ6dXJsKC8vd3d3Lmdvb2dsZS5j
52
+ b20vaW1hZ2VzL2JyYW5kaW5nL2dvb2dsZWxvZ28vMngvZ29vZ2xlbG9nb19j
53
+ b2xvcl8xNTB4NTRkcC5wbmcpIG5vLXJlcGVhdDstd2Via2l0LWJhY2tncm91
54
+ bmQtc2l6ZToxMDAlIDEwMCV9fSNsb2dve2Rpc3BsYXk6aW5saW5lLWJsb2Nr
55
+ O2hlaWdodDo1NHB4O3dpZHRoOjE1MHB4fQogIDwvc3R5bGU+CiAgPGEgaHJl
56
+ Zj0vL3d3dy5nb29nbGUuY29tLz48c3BhbiBpZD1sb2dvIGFyaWEtbGFiZWw9
57
+ R29vZ2xlPjwvc3Bhbj48L2E+CiAgPHA+PGI+NDAwLjwvYj4gPGlucz5UaGF0
58
+ 4oCZcyBhbiBlcnJvci48L2lucz4KICA8cD5Zb3VyIGNsaWVudCBoYXMgaXNz
59
+ dWVkIGEgbWFsZm9ybWVkIG9yIGlsbGVnYWwgcmVxdWVzdC4gIDxpbnM+VGhh
60
+ dOKAmXMgYWxsIHdlIGtub3cuPC9pbnM+Cg==
61
+ http_version:
62
+ recorded_at: Fri, 28 Oct 2016 05:28:05 GMT
63
+ recorded_with: VCR 3.0.3
@@ -1,4 +1,5 @@
1
- MINIMUM_COVERAGE = 76
1
+ MINIMUM_COVERAGE = 77.8
2
+ MAXIMUM_COVERAGE = MINIMUM_COVERAGE + 0.5
2
3
 
3
4
  if ENV['COVERAGE'] != 'off'
4
5
  require 'simplecov'
@@ -18,8 +19,12 @@ if ENV['COVERAGE'] != 'off'
18
19
  SimpleCov.at_exit do
19
20
  SimpleCov.result.format!
20
21
  percent = SimpleCov.result.covered_percent
21
- unless percent >= MINIMUM_COVERAGE
22
- puts "Coverage must be above #{MINIMUM_COVERAGE}%. It is #{'%.2f' % percent}%"
22
+ puts "Coverage is #{'%.2f' % percent}%"
23
+ if percent < MINIMUM_COVERAGE
24
+ puts "Coverage must be above #{MINIMUM_COVERAGE}%"
25
+ Kernel.exit(1)
26
+ elsif percent > MAXIMUM_COVERAGE
27
+ puts "Coverage is above #{MAXIMUM_COVERAGE}%. Time to bump minimum coverage!"
23
28
  Kernel.exit(1)
24
29
  end
25
30
  end
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: 2.3.1
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Noack
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-08-30 00:00:00.000000000 Z
13
+ date: 2016-11-01 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: httparty
@@ -288,8 +288,8 @@ files:
288
288
  - Rakefile
289
289
  - examples/example_config.rb
290
290
  - examples/login_example.rb
291
- - gemfiles/rails2.gemfile
292
291
  - gemfiles/rails4.gemfile
292
+ - gemfiles/rails5.gemfile
293
293
  - lib/extensions.rb
294
294
  - lib/quick_travel.rb
295
295
  - lib/quick_travel/accommodation.rb
@@ -405,11 +405,10 @@ files:
405
405
  - spec/support/cassettes/resource_category_all.yml
406
406
  - spec/support/cassettes/resource_category_all_for_product_type_8.yml
407
407
  - spec/support/cassettes/resource_fare_bases.yml
408
- - spec/support/cassettes/resource_product_type.yml
409
408
  - spec/support/cassettes/resource_show.yml
410
409
  - spec/support/cassettes/resource_with_price.yml
411
- - spec/support/cassettes/route_all.yml
412
410
  - spec/support/cassettes/tenant_switcher.yml
411
+ - spec/support/cassettes/wrong_url.yml
413
412
  - spec/support/coverage_loader.rb
414
413
  - spec/support/vcr_loader.rb
415
414
  - spec/tenant_spec.rb
@@ -487,11 +486,10 @@ test_files:
487
486
  - spec/support/cassettes/resource_category_all.yml
488
487
  - spec/support/cassettes/resource_category_all_for_product_type_8.yml
489
488
  - spec/support/cassettes/resource_fare_bases.yml
490
- - spec/support/cassettes/resource_product_type.yml
491
489
  - spec/support/cassettes/resource_show.yml
492
490
  - spec/support/cassettes/resource_with_price.yml
493
- - spec/support/cassettes/route_all.yml
494
491
  - spec/support/cassettes/tenant_switcher.yml
492
+ - spec/support/cassettes/wrong_url.yml
495
493
  - spec/support/coverage_loader.rb
496
494
  - spec/support/vcr_loader.rb
497
495
  - spec/tenant_spec.rb