quicktravel_client 2.8.0 → 2.9.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.
- checksums.yaml +4 -4
 - data/CHANGELOG.md +7 -0
 - data/lib/quick_travel/adapter.rb +0 -9
 - data/lib/quick_travel/booking.rb +2 -10
 - data/lib/quick_travel/party.rb +1 -1
 - data/lib/quick_travel/version.rb +1 -1
 - data/lib/quick_travel.rb +0 -3
 - data/spec/booking_spec.rb +27 -0
 - data/spec/spec_helper.rb +0 -1
 - data/spec/support/cassettes/accommodation_reserve.yml +188 -0
 - data/spec/support/cassettes/booking_create.yml +1 -1
 - data/spec/support/coverage_loader.rb +1 -1
 - metadata +5 -4
 - data/lib/quick_travel/constants.rb +0 -15
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 3a76d145655f8fbc3fbfa075eecd441b01e90007
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: e53d5216a6e40d44416c0752db5bfe060ed8f799
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 44ba1235552de14a7384a47c45d5d25e980f838a05de1c1436dba7da7f6681e733c93b52e22c2bc8010b2ee5edf423c7bc112da498be552863d9621e50259112
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 464f0a91ca06c4da7549f1c3d0126d4977513cf6a0b52b67b07f250291d6b9ecfe300a69064a3a498ce7cc2ad5f3aa566ff14cb44e8000b18bd8a20fa9e0f660
         
     | 
    
        data/CHANGELOG.md
    CHANGED
    
    | 
         @@ -3,6 +3,13 @@ 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 
     | 
    
         
            +
            ## [2.9.0]
         
     | 
| 
      
 7 
     | 
    
         
            +
            ### Changed
         
     | 
| 
      
 8 
     | 
    
         
            +
            - Use new API login
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            ### Removed
         
     | 
| 
      
 11 
     | 
    
         
            +
            - Remove unused constants and default referral code
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
       6 
13 
     | 
    
         
             
            ## [2.8.0]
         
     | 
| 
       7 
14 
     | 
    
         
             
            ### Changed
         
     | 
| 
       8 
15 
     | 
    
         
             
            - @booking.accommodation_reserve now expects to be passed the adjusted last_travel_date
         
     | 
    
        data/lib/quick_travel/adapter.rb
    CHANGED
    
    | 
         @@ -101,15 +101,6 @@ module QuickTravel 
     | 
|
| 
       101 
101 
     | 
    
         
             
                  put_and_validate("#{api_base}/#{id}.json", options)
         
     | 
| 
       102 
102 
     | 
    
         
             
                end
         
     | 
| 
       103 
103 
     | 
    
         | 
| 
       104 
     | 
    
         
            -
                def self.qt_date_format_conversion(str)
         
     | 
| 
       105 
     | 
    
         
            -
                  qt_date_format_conversion!(str)
         
     | 
| 
       106 
     | 
    
         
            -
                rescue ArgumentError
         
     | 
| 
       107 
     | 
    
         
            -
                end
         
     | 
| 
       108 
     | 
    
         
            -
             
     | 
| 
       109 
     | 
    
         
            -
                def self.qt_date_format_conversion!(str)
         
     | 
| 
       110 
     | 
    
         
            -
                  Date.strptime(str, '%d/%m/%Y').strftime('%d-%m-%Y')
         
     | 
| 
       111 
     | 
    
         
            -
                end
         
     | 
| 
       112 
     | 
    
         
            -
             
     | 
| 
       113 
104 
     | 
    
         
             
                def to_hash
         
     | 
| 
       114 
105 
     | 
    
         
             
                  instance_values
         
     | 
| 
       115 
106 
     | 
    
         
             
                end
         
     | 
    
        data/lib/quick_travel/booking.rb
    CHANGED
    
    | 
         @@ -51,10 +51,7 @@ module QuickTravel 
     | 
|
| 
       51 
51 
     | 
    
         
             
                #  :trailer => { :vehicle_type_id => nil , :length => nil  }
         
     | 
| 
       52 
52 
     | 
    
         
             
                # }
         
     | 
| 
       53 
53 
     | 
    
         
             
                def self.create(options = {})
         
     | 
| 
       54 
     | 
    
         
            -
                   
     | 
| 
       55 
     | 
    
         
            -
                  options = { booking: default_options.merge(options) }
         
     | 
| 
       56 
     | 
    
         
            -
             
     | 
| 
       57 
     | 
    
         
            -
                  response = post_and_validate("#{api_base}.json", options)
         
     | 
| 
      
 54 
     | 
    
         
            +
                  response = post_and_validate("#{api_base}.json", booking: options)
         
     | 
| 
       58 
55 
     | 
    
         
             
                  fail AdapterError.new(response) unless response['id']
         
     | 
| 
       59 
56 
     | 
    
         | 
| 
       60 
57 
     | 
    
         
             
                  return nil unless response['id']
         
     | 
| 
         @@ -117,12 +114,7 @@ module QuickTravel 
     | 
|
| 
       117 
114 
     | 
    
         
             
                    fail AdapterError.new('No checkout date specified')
         
     | 
| 
       118 
115 
     | 
    
         
             
                  end
         
     | 
| 
       119 
116 
     | 
    
         | 
| 
       120 
     | 
    
         
            -
                   
     | 
| 
       121 
     | 
    
         
            -
             
     | 
| 
       122 
     | 
    
         
            -
                  options = { reservations: reservations_options }
         
     | 
| 
       123 
     | 
    
         
            -
                  options[:reservations][:last_travel_date] = last_travel_date.strftime(QT_DATE_FORMAT)
         
     | 
| 
       124 
     | 
    
         
            -
             
     | 
| 
       125 
     | 
    
         
            -
                  reserve('accommodations/create_or_update', options)
         
     | 
| 
      
 117 
     | 
    
         
            +
                  reserve('accommodations/create_or_update', reservations: reservations_options)
         
     | 
| 
       126 
118 
     | 
    
         
             
                end
         
     | 
| 
       127 
119 
     | 
    
         | 
| 
       128 
120 
     | 
    
         
             
                # Reserve a scheduled trips resource
         
     | 
    
        data/lib/quick_travel/party.rb
    CHANGED
    
    
    
        data/lib/quick_travel/version.rb
    CHANGED
    
    
    
        data/lib/quick_travel.rb
    CHANGED
    
    | 
         @@ -12,9 +12,6 @@ module QuickTravel 
     | 
|
| 
       12 
12 
     | 
    
         
             
              require 'quick_travel/connection_error'
         
     | 
| 
       13 
13 
     | 
    
         
             
              require 'quick_travel/status'
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
     | 
    
         
            -
              # Don't include this guy: pull the pieces into the classes that use it, or ref
         
     | 
| 
       16 
     | 
    
         
            -
              require 'quick_travel/constants'
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
15 
     | 
    
         
             
              require 'quick_travel/product'
         
     | 
| 
       19 
16 
     | 
    
         
             
              require 'quick_travel/product_configuration'
         
     | 
| 
       20 
17 
     | 
    
         
             
              require 'quick_travel/products/base'
         
     | 
    
        data/spec/booking_spec.rb
    CHANGED
    
    | 
         @@ -140,3 +140,30 @@ describe QuickTravel::Booking do 
     | 
|
| 
       140 
140 
     | 
    
         
             
                expect(updated_consumer.first_name).to eq 'New'
         
     | 
| 
       141 
141 
     | 
    
         
             
              end
         
     | 
| 
       142 
142 
     | 
    
         
             
            end
         
     | 
| 
      
 143 
     | 
    
         
            +
             
     | 
| 
      
 144 
     | 
    
         
            +
            describe QuickTravel::Booking, 'when booking accommodation' do
         
     | 
| 
      
 145 
     | 
    
         
            +
              let(:booking) {
         
     | 
| 
      
 146 
     | 
    
         
            +
                VCR.use_cassette('booking_with_documents') {
         
     | 
| 
      
 147 
     | 
    
         
            +
                  QuickTravel::Booking.find(1)
         
     | 
| 
      
 148 
     | 
    
         
            +
                }
         
     | 
| 
      
 149 
     | 
    
         
            +
              }
         
     | 
| 
      
 150 
     | 
    
         
            +
              let(:reservation) {
         
     | 
| 
      
 151 
     | 
    
         
            +
                VCR.use_cassette('accommodation_reserve') do
         
     | 
| 
      
 152 
     | 
    
         
            +
                  booking.accommodation_reserve(
         
     | 
| 
      
 153 
     | 
    
         
            +
                    passenger_ids: booking.passenger_ids,
         
     | 
| 
      
 154 
     | 
    
         
            +
                    resource_id: 6, # executive room
         
     | 
| 
      
 155 
     | 
    
         
            +
                    bed_configuration_id: 1,
         
     | 
| 
      
 156 
     | 
    
         
            +
                    first_travel_date: '01/03/2016',
         
     | 
| 
      
 157 
     | 
    
         
            +
                    last_travel_date: '02/03/2016'
         
     | 
| 
      
 158 
     | 
    
         
            +
                  )
         
     | 
| 
      
 159 
     | 
    
         
            +
                  booking.reservations.detect { |reservation| reservation.resource.name == 'Executive Room' }
         
     | 
| 
      
 160 
     | 
    
         
            +
                end
         
     | 
| 
      
 161 
     | 
    
         
            +
              }
         
     | 
| 
      
 162 
     | 
    
         
            +
             
     | 
| 
      
 163 
     | 
    
         
            +
              it 'should create acommodation reservation' do
         
     | 
| 
      
 164 
     | 
    
         
            +
                expect(reservation.first_travel_date).to eq '2016-03-01'.to_date
         
     | 
| 
      
 165 
     | 
    
         
            +
                expect(reservation.last_travel_date).to eq '2016-03-02'.to_date
         
     | 
| 
      
 166 
     | 
    
         
            +
                expect(reservation.resource.name).to eq 'Executive Room'
         
     | 
| 
      
 167 
     | 
    
         
            +
                expect(reservation.passenger_ids).to eq booking.passenger_ids
         
     | 
| 
      
 168 
     | 
    
         
            +
              end
         
     | 
| 
      
 169 
     | 
    
         
            +
            end
         
     | 
    
        data/spec/spec_helper.rb
    CHANGED
    
    
| 
         @@ -0,0 +1,188 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ---
         
     | 
| 
      
 2 
     | 
    
         
            +
            http_interactions:
         
     | 
| 
      
 3 
     | 
    
         
            +
            - request:
         
     | 
| 
      
 4 
     | 
    
         
            +
                method: post
         
     | 
| 
      
 5 
     | 
    
         
            +
                uri: http://test.qt.sealink.com.au:8080/reservation_for/accommodations/create_or_update.json
         
     | 
| 
      
 6 
     | 
    
         
            +
                body:
         
     | 
| 
      
 7 
     | 
    
         
            +
                  encoding: UTF-8
         
     | 
| 
      
 8 
     | 
    
         
            +
                  string: reservations[passenger_ids][]=1&reservations[passenger_ids][]=2&reservations[resource_id]=6&reservations[bed_configuration_id]=1&reservations[first_travel_date]=01%2F03%2F2016&reservations[last_travel_date]=02%2F03%2F2016&booking_id=1&access_key=<QT_KEY>
         
     | 
| 
      
 9 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 10 
     | 
    
         
            +
                  Content-Length:
         
     | 
| 
      
 11 
     | 
    
         
            +
                  - '0'
         
     | 
| 
      
 12 
     | 
    
         
            +
              response:
         
     | 
| 
      
 13 
     | 
    
         
            +
                status:
         
     | 
| 
      
 14 
     | 
    
         
            +
                  code: 200
         
     | 
| 
      
 15 
     | 
    
         
            +
                  message: 'OK '
         
     | 
| 
      
 16 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 17 
     | 
    
         
            +
                  P3p:
         
     | 
| 
      
 18 
     | 
    
         
            +
                  - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
         
     | 
| 
      
 19 
     | 
    
         
            +
                  Content-Type:
         
     | 
| 
      
 20 
     | 
    
         
            +
                  - application/json; charset=utf-8
         
     | 
| 
      
 21 
     | 
    
         
            +
                  X-Ua-Compatible:
         
     | 
| 
      
 22 
     | 
    
         
            +
                  - IE=Edge,chrome=1
         
     | 
| 
      
 23 
     | 
    
         
            +
                  Etag:
         
     | 
| 
      
 24 
     | 
    
         
            +
                  - '"7215ee9c7d9dc229d2921a40e899ec5f"'
         
     | 
| 
      
 25 
     | 
    
         
            +
                  Cache-Control:
         
     | 
| 
      
 26 
     | 
    
         
            +
                  - max-age=0, private, must-revalidate
         
     | 
| 
      
 27 
     | 
    
         
            +
                  X-Request-Id:
         
     | 
| 
      
 28 
     | 
    
         
            +
                  - 8483181abc52a31a2826eb6ff745cd65
         
     | 
| 
      
 29 
     | 
    
         
            +
                  X-Runtime:
         
     | 
| 
      
 30 
     | 
    
         
            +
                  - '0.583677'
         
     | 
| 
      
 31 
     | 
    
         
            +
                  Vary:
         
     | 
| 
      
 32 
     | 
    
         
            +
                  - Origin
         
     | 
| 
      
 33 
     | 
    
         
            +
                  Date:
         
     | 
| 
      
 34 
     | 
    
         
            +
                  - Fri, 01 Jan 2016 04:38:24 GMT
         
     | 
| 
      
 35 
     | 
    
         
            +
                  X-Rack-Cache:
         
     | 
| 
      
 36 
     | 
    
         
            +
                  - invalidate, pass
         
     | 
| 
      
 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 
     | 
    
         
            +
                  - '1'
         
     | 
| 
      
 51 
     | 
    
         
            +
                  Connection:
         
     | 
| 
      
 52 
     | 
    
         
            +
                  - Keep-Alive
         
     | 
| 
      
 53 
     | 
    
         
            +
                  Set-Cookie:
         
     | 
| 
      
 54 
     | 
    
         
            +
                  - _session_id=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJTZhYjQyOTVjMGExNTJkZTM3MThhODk2YmY0MDQ1NDQ0BjsAVEkiCXVzZXIGOwBGaQY%3D--d7a6c585df1323901ec4d571ae9e7b92a3623e1f;
         
     | 
| 
      
 55 
     | 
    
         
            +
                    path=/; HttpOnly
         
     | 
| 
      
 56 
     | 
    
         
            +
                body:
         
     | 
| 
      
 57 
     | 
    
         
            +
                  encoding: UTF-8
         
     | 
| 
      
 58 
     | 
    
         
            +
                  string: " "
         
     | 
| 
      
 59 
     | 
    
         
            +
                http_version: 
         
     | 
| 
      
 60 
     | 
    
         
            +
              recorded_at: Wed, 08 Feb 2017 00:35:12 GMT
         
     | 
| 
      
 61 
     | 
    
         
            +
            - request:
         
     | 
| 
      
 62 
     | 
    
         
            +
                method: get
         
     | 
| 
      
 63 
     | 
    
         
            +
                uri: http://test.qt.sealink.com.au:8080/api/bookings/1.json
         
     | 
| 
      
 64 
     | 
    
         
            +
                body:
         
     | 
| 
      
 65 
     | 
    
         
            +
                  encoding: UTF-8
         
     | 
| 
      
 66 
     | 
    
         
            +
                  string: access_key=<QT_KEY>
         
     | 
| 
      
 67 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 68 
     | 
    
         
            +
                  Content-Length:
         
     | 
| 
      
 69 
     | 
    
         
            +
                  - '0'
         
     | 
| 
      
 70 
     | 
    
         
            +
              response:
         
     | 
| 
      
 71 
     | 
    
         
            +
                status:
         
     | 
| 
      
 72 
     | 
    
         
            +
                  code: 200
         
     | 
| 
      
 73 
     | 
    
         
            +
                  message: 'OK '
         
     | 
| 
      
 74 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 75 
     | 
    
         
            +
                  P3p:
         
     | 
| 
      
 76 
     | 
    
         
            +
                  - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
         
     | 
| 
      
 77 
     | 
    
         
            +
                  Content-Type:
         
     | 
| 
      
 78 
     | 
    
         
            +
                  - application/json; charset=utf-8
         
     | 
| 
      
 79 
     | 
    
         
            +
                  X-Ua-Compatible:
         
     | 
| 
      
 80 
     | 
    
         
            +
                  - IE=Edge,chrome=1
         
     | 
| 
      
 81 
     | 
    
         
            +
                  Etag:
         
     | 
| 
      
 82 
     | 
    
         
            +
                  - '"ea2f8a56e770a78eec327ba979588850"'
         
     | 
| 
      
 83 
     | 
    
         
            +
                  Cache-Control:
         
     | 
| 
      
 84 
     | 
    
         
            +
                  - max-age=0, private, must-revalidate
         
     | 
| 
      
 85 
     | 
    
         
            +
                  X-Request-Id:
         
     | 
| 
      
 86 
     | 
    
         
            +
                  - 7d3bf632051d184e80724dc59dba8b34
         
     | 
| 
      
 87 
     | 
    
         
            +
                  X-Runtime:
         
     | 
| 
      
 88 
     | 
    
         
            +
                  - '0.155058'
         
     | 
| 
      
 89 
     | 
    
         
            +
                  Vary:
         
     | 
| 
      
 90 
     | 
    
         
            +
                  - Origin
         
     | 
| 
      
 91 
     | 
    
         
            +
                  Date:
         
     | 
| 
      
 92 
     | 
    
         
            +
                  - Fri, 01 Jan 2016 04:38:25 GMT
         
     | 
| 
      
 93 
     | 
    
         
            +
                  X-Rack-Cache:
         
     | 
| 
      
 94 
     | 
    
         
            +
                  - miss
         
     | 
| 
      
 95 
     | 
    
         
            +
                  X-Content-Type-Options:
         
     | 
| 
      
 96 
     | 
    
         
            +
                  - nosniff
         
     | 
| 
      
 97 
     | 
    
         
            +
                  X-Download-Options:
         
     | 
| 
      
 98 
     | 
    
         
            +
                  - noopen
         
     | 
| 
      
 99 
     | 
    
         
            +
                  X-Frame-Options:
         
     | 
| 
      
 100 
     | 
    
         
            +
                  - sameorigin
         
     | 
| 
      
 101 
     | 
    
         
            +
                  X-Permitted-Cross-Domain-Policies:
         
     | 
| 
      
 102 
     | 
    
         
            +
                  - none
         
     | 
| 
      
 103 
     | 
    
         
            +
                  X-Xss-Protection:
         
     | 
| 
      
 104 
     | 
    
         
            +
                  - 1; mode=block
         
     | 
| 
      
 105 
     | 
    
         
            +
                  Server:
         
     | 
| 
      
 106 
     | 
    
         
            +
                  - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
         
     | 
| 
      
 107 
     | 
    
         
            +
                  Content-Length:
         
     | 
| 
      
 108 
     | 
    
         
            +
                  - '6280'
         
     | 
| 
      
 109 
     | 
    
         
            +
                  Connection:
         
     | 
| 
      
 110 
     | 
    
         
            +
                  - Keep-Alive
         
     | 
| 
      
 111 
     | 
    
         
            +
                  Set-Cookie:
         
     | 
| 
      
 112 
     | 
    
         
            +
                  - _session_id=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJWFmZWIxNmZkYjBjOTc0ZDQ3YzgxYmE3N2UyMTdlZTMzBjsAVEkiCXVzZXIGOwBGaQY%3D--b1bc261a811a392ee20584effaf23a3db290b279;
         
     | 
| 
      
 113 
     | 
    
         
            +
                    path=/; HttpOnly
         
     | 
| 
      
 114 
     | 
    
         
            +
                body:
         
     | 
| 
      
 115 
     | 
    
         
            +
                  encoding: UTF-8
         
     | 
| 
      
 116 
     | 
    
         
            +
                  string: '{"id":1,"state":"active","reference":"222223","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":3,"post_code":"","referral_code_id":1,"external_identifier":null,"created_at":"2013-03-01T00:05:46+10:30","updated_at":"2016-01-01T15:08:24+10:30","promo_code":null,"promo_code_id":null,"insurance_offered":false,"total_adjustments_in_cents":0,"pre_adjusted_gross_in_cents":20000,"nett_in_cents":20000,"gross_in_cents":20000,"commission_in_cents":0,"balance_in_cents":20000,"paid_in_cents":0,"surcharge_in_cents":0,"deposit_in_cents":0,"web_site_name":null,"deposit_relevant":false,"deposit_due_on":{"_type":"Date","_value":"2016-03-01T00:00:00+10:30"},"balance_due_on":{"_type":"Date","_value":"2016-03-01T00:00:00+10:30"},"first_travel_date":{"_type":"Date","_value":"2016-03-01"},"last_travel_date":{"_type":"Date","_value":"2016-03-02"},"complete":true,"reason_not_complete":"","first_reason_not_complete":"","discardable_in":60,"inactivatable_in":10,"notices":{},"client":null,"passenger_ids":[1,2],"vehicle_ids":[],"reservation_ids":[13],"adjustment_ids":[],"todo_items":[],"confirmation_requests":[],"passengers_attributes":[{"id":1,"title":null,"first_name":null,"last_name":null,"passenger_type_id":1,"age":30,"gender":null,"position":1},{"id":2,"title":null,"first_name":null,"last_name":null,"passenger_type_id":1,"age":30,"gender":null,"position":2}],"vehicles_attributes":[],"reservations_attributes":[{"id":13,"booking_id":1,"description":"A
         
     | 
| 
      
 117 
     | 
    
         
            +
                    basic studio room","comment":null,"active":true,"service_ids":[3,4],"resource_id":6,"quantity":null,"adjustments_attributes":[{"id":12,"gross_in_cents":-20000,"creator":{"active":true,"age":null,"business_number":null,"business_number_type":null,"created_at":"2013-03-01T00:00:02+10:30","creator_id":null,"currency_iso_code":"AUD","first_name":"administrator","gender":null,"id":1,"internal_staff":true,"internal_subdivision":false,"last_name":"administrator","name":"Administrator
         
     | 
| 
      
 118 
     | 
    
         
            +
                    Administrator","notes":null,"remember_token":null,"remember_token_expires_at":null,"salt":null,"title":null,"updated_at":"2013-03-01T00:00:03+10:30","updator_id":null},"created_at":"2016-01-01T15:08:24+10:30","description":"50%
         
     | 
| 
      
 119 
     | 
    
         
            +
                    Off","adjustable_item_type":"Reservation","adjustable_item_id":13,"adjustment_definition_id":1,"adjustment_category_id":1,"automatic":true}],"complete":true,"reason_not_complete":"","first_reason_not_complete":"","enough_time_before_travel_to_edit":true,"bed_configuration":"1
         
     | 
| 
      
 120 
     | 
    
         
            +
                    x Double and 1 x Single","product_type_id":2,"itinerary_footer":false,"fare_basis_set_id":12,"manually_priced":false,"manually_assigned_fare_basis_set":false,"has_fare_basis":true,"fare_basis_season_name":"","fare_basis_pointer_id":6,"pick_up_info":null,"drop_off_info":null,"selection_name":"Hilton
         
     | 
| 
      
 121 
     | 
    
         
            +
                    Hotel:  Executive Room","product_name_underscore":"accommodation","resource_class_name_underscore":"accommodation","resource_class_name":"Accommodation","has_ticket_template":false,"first_travel_date":{"_type":"Date","_value":"2016-03-01"},"last_travel_date":{"_type":"Date","_value":"2016-03-02"},"durational":true,"duration":2,"checkout_date":{"_type":"Date","_value":"2016-03-03"},"duration_units":"Nights","date_start_label":"In:","date_end_label":"Out:","accommodation_extra_picks":false,"expires":false,"expiry":"*NA*","has_skipped_reservation_groups":false,"editable_reservation_groups":[],"tariff_level_name":"Auto
         
     | 
| 
      
 122 
     | 
    
         
            +
                    Priced as: Rack Rate","gross_including_packaged_item_in_cents":20000,"pre_adjusted_gross_including_packaged_item_in_cents":40000,"gross_in_cents":20000,"pre_adjusted_gross_in_cents":40000,"pre_adjusted_commission_in_cents":0,"cost_in_cents":20000,"rules":[{"unique_name":"Test
         
     | 
| 
      
 123 
     | 
    
         
            +
                    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":[1,2],"passenger_splits":[{"commission_in_cents":0,"commission_percentage":"0.0","consumer_id":1,"consumer_splittable_id":13,"consumer_splittable_type":"Reservation","created_at":"2016-01-01T15:08:24+10:30","gross_in_cents":0,"id":23,"updated_at":"2016-01-01T15:08:24+10:30"},{"commission_in_cents":0,"commission_percentage":"0.0","consumer_id":2,"consumer_splittable_id":13,"consumer_splittable_type":"Reservation","created_at":"2016-01-01T15:08:24+10:30","gross_in_cents":0,"id":24,"updated_at":"2016-01-01T15:08:24+10:30"}],"vehicle_ids":[],"vehicle_splits":[],"consumer_grosses":{"1":0,"2":0}}],"adjustments_attributes":[],"payments_attributes":[],"payment_types_attributes":[{"id":5,"name":"master","description":"master","transaction_fee":"0.0","active":true,"position":2,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":null,"updated_at":null,"credit_card_brand":"MasterCard","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":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":7,"name":"PayPal","description":"Payments
         
     | 
| 
      
 124 
     | 
    
         
            +
                    made via PayPal account","transaction_fee":"0.0","active":true,"position":6,"for_frequent_traveller_redemption":false,"comment_required":false,"created_at":"2013-03-01T00:00:03+10:30","updated_at":"2013-03-01T00:00:03+10:30","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}],"issued_tickets_attributes":[]}'
         
     | 
| 
      
 125 
     | 
    
         
            +
                http_version: 
         
     | 
| 
      
 126 
     | 
    
         
            +
              recorded_at: Wed, 08 Feb 2017 00:35:12 GMT
         
     | 
| 
      
 127 
     | 
    
         
            +
            - request:
         
     | 
| 
      
 128 
     | 
    
         
            +
                method: get
         
     | 
| 
      
 129 
     | 
    
         
            +
                uri: http://test.qt.sealink.com.au:8080/resources/6.json
         
     | 
| 
      
 130 
     | 
    
         
            +
                body:
         
     | 
| 
      
 131 
     | 
    
         
            +
                  encoding: UTF-8
         
     | 
| 
      
 132 
     | 
    
         
            +
                  string: access_key=<QT_KEY>
         
     | 
| 
      
 133 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 134 
     | 
    
         
            +
                  Content-Length:
         
     | 
| 
      
 135 
     | 
    
         
            +
                  - '0'
         
     | 
| 
      
 136 
     | 
    
         
            +
              response:
         
     | 
| 
      
 137 
     | 
    
         
            +
                status:
         
     | 
| 
      
 138 
     | 
    
         
            +
                  code: 200
         
     | 
| 
      
 139 
     | 
    
         
            +
                  message: 'OK '
         
     | 
| 
      
 140 
     | 
    
         
            +
                headers:
         
     | 
| 
      
 141 
     | 
    
         
            +
                  P3p:
         
     | 
| 
      
 142 
     | 
    
         
            +
                  - CP="IDC DSP CAO COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
         
     | 
| 
      
 143 
     | 
    
         
            +
                  Content-Type:
         
     | 
| 
      
 144 
     | 
    
         
            +
                  - application/json; charset=utf-8
         
     | 
| 
      
 145 
     | 
    
         
            +
                  X-Ua-Compatible:
         
     | 
| 
      
 146 
     | 
    
         
            +
                  - IE=Edge,chrome=1
         
     | 
| 
      
 147 
     | 
    
         
            +
                  Etag:
         
     | 
| 
      
 148 
     | 
    
         
            +
                  - '"4d660ebe1fce6dba8cfe89a924383b21"'
         
     | 
| 
      
 149 
     | 
    
         
            +
                  Cache-Control:
         
     | 
| 
      
 150 
     | 
    
         
            +
                  - max-age=0, private, must-revalidate
         
     | 
| 
      
 151 
     | 
    
         
            +
                  X-Request-Id:
         
     | 
| 
      
 152 
     | 
    
         
            +
                  - befb6299b8e9da3e8c7c2be5741aa0ee
         
     | 
| 
      
 153 
     | 
    
         
            +
                  X-Runtime:
         
     | 
| 
      
 154 
     | 
    
         
            +
                  - '0.065444'
         
     | 
| 
      
 155 
     | 
    
         
            +
                  Vary:
         
     | 
| 
      
 156 
     | 
    
         
            +
                  - Origin
         
     | 
| 
      
 157 
     | 
    
         
            +
                  Date:
         
     | 
| 
      
 158 
     | 
    
         
            +
                  - Fri, 01 Jan 2016 04:38:25 GMT
         
     | 
| 
      
 159 
     | 
    
         
            +
                  X-Rack-Cache:
         
     | 
| 
      
 160 
     | 
    
         
            +
                  - miss
         
     | 
| 
      
 161 
     | 
    
         
            +
                  X-Content-Type-Options:
         
     | 
| 
      
 162 
     | 
    
         
            +
                  - nosniff
         
     | 
| 
      
 163 
     | 
    
         
            +
                  X-Download-Options:
         
     | 
| 
      
 164 
     | 
    
         
            +
                  - noopen
         
     | 
| 
      
 165 
     | 
    
         
            +
                  X-Frame-Options:
         
     | 
| 
      
 166 
     | 
    
         
            +
                  - sameorigin
         
     | 
| 
      
 167 
     | 
    
         
            +
                  X-Permitted-Cross-Domain-Policies:
         
     | 
| 
      
 168 
     | 
    
         
            +
                  - none
         
     | 
| 
      
 169 
     | 
    
         
            +
                  X-Xss-Protection:
         
     | 
| 
      
 170 
     | 
    
         
            +
                  - 1; mode=block
         
     | 
| 
      
 171 
     | 
    
         
            +
                  Server:
         
     | 
| 
      
 172 
     | 
    
         
            +
                  - WEBrick/1.3.1 (Ruby/2.2.5/2016-04-26)
         
     | 
| 
      
 173 
     | 
    
         
            +
                  Content-Length:
         
     | 
| 
      
 174 
     | 
    
         
            +
                  - '1444'
         
     | 
| 
      
 175 
     | 
    
         
            +
                  Connection:
         
     | 
| 
      
 176 
     | 
    
         
            +
                  - Keep-Alive
         
     | 
| 
      
 177 
     | 
    
         
            +
                  Set-Cookie:
         
     | 
| 
      
 178 
     | 
    
         
            +
                  - _session_id=BAh7B0kiD3Nlc3Npb25faWQGOgZFVEkiJWJkNmVhMDgwMDNjNzlhZGFkY2Y0YjM3NDEyYjRkMmFjBjsAVEkiCXVzZXIGOwBGaQY%3D--d7a54eab8057174197ebacf5b21a47b876feade9;
         
     | 
| 
      
 179 
     | 
    
         
            +
                    path=/; HttpOnly
         
     | 
| 
      
 180 
     | 
    
         
            +
                body:
         
     | 
| 
      
 181 
     | 
    
         
            +
                  encoding: UTF-8
         
     | 
| 
      
 182 
     | 
    
         
            +
                  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,"inline_price_in_cents":null,"inline_cost_in_cents":null,"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
         
     | 
| 
      
 183 
     | 
    
         
            +
                    Hotel - Executive Room","client_type_ids":[],"category":null,"location":"Adelaide
         
     | 
| 
      
 184 
     | 
    
         
            +
                    CBD","current_description":"\u003Cp\u003EA basic studio room\u003C/p\u003E","graphics":[],"graphic_names":[],"property_name":"Hilton
         
     | 
| 
      
 185 
     | 
    
         
            +
                    Hotel","ticket_template":null,"expiry_days":null}'
         
     | 
| 
      
 186 
     | 
    
         
            +
                http_version: 
         
     | 
| 
      
 187 
     | 
    
         
            +
              recorded_at: Wed, 08 Feb 2017 00:35:12 GMT
         
     | 
| 
      
 188 
     | 
    
         
            +
            recorded_with: VCR 3.0.3
         
     | 
    
        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. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 2.9.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: 2017-02- 
     | 
| 
      
 13 
     | 
    
         
            +
            date: 2017-02-16 00:00:00.000000000 Z
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies:
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       16 
16 
     | 
    
         
             
              name: httparty
         
     | 
| 
         @@ -307,7 +307,6 @@ files: 
     | 
|
| 
       307 
307 
     | 
    
         
             
            - lib/quick_travel/client_type.rb
         
     | 
| 
       308 
308 
     | 
    
         
             
            - lib/quick_travel/config.rb
         
     | 
| 
       309 
309 
     | 
    
         
             
            - lib/quick_travel/connection_error.rb
         
     | 
| 
       310 
     | 
    
         
            -
            - lib/quick_travel/constants.rb
         
     | 
| 
       311 
310 
     | 
    
         
             
            - lib/quick_travel/contact.rb
         
     | 
| 
       312 
311 
     | 
    
         
             
            - lib/quick_travel/country.rb
         
     | 
| 
       313 
312 
     | 
    
         
             
            - lib/quick_travel/credit_card.rb
         
     | 
| 
         @@ -375,6 +374,7 @@ files: 
     | 
|
| 
       375 
374 
     | 
    
         
             
            - spec/route_spec.rb
         
     | 
| 
       376 
375 
     | 
    
         
             
            - spec/spec_helper.rb
         
     | 
| 
       377 
376 
     | 
    
         
             
            - spec/status_spec.rb
         
     | 
| 
      
 377 
     | 
    
         
            +
            - spec/support/cassettes/accommodation_reserve.yml
         
     | 
| 
       378 
378 
     | 
    
         
             
            - spec/support/cassettes/basic_product_scheduled_trips.yml
         
     | 
| 
       379 
379 
     | 
    
         
             
            - spec/support/cassettes/basic_product_scheduled_trips_multi_sector.yml
         
     | 
| 
       380 
380 
     | 
    
         
             
            - spec/support/cassettes/basic_product_scheduled_trips_unbookable.yml
         
     | 
| 
         @@ -433,7 +433,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       433 
433 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       434 
434 
     | 
    
         
             
            requirements: []
         
     | 
| 
       435 
435 
     | 
    
         
             
            rubyforge_project: 
         
     | 
| 
       436 
     | 
    
         
            -
            rubygems_version: 2.4. 
     | 
| 
      
 436 
     | 
    
         
            +
            rubygems_version: 2.4.8
         
     | 
| 
       437 
437 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       438 
438 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       439 
439 
     | 
    
         
             
            summary: Booking process using QuickTravel API
         
     | 
| 
         @@ -458,6 +458,7 @@ test_files: 
     | 
|
| 
       458 
458 
     | 
    
         
             
            - spec/route_spec.rb
         
     | 
| 
       459 
459 
     | 
    
         
             
            - spec/spec_helper.rb
         
     | 
| 
       460 
460 
     | 
    
         
             
            - spec/status_spec.rb
         
     | 
| 
      
 461 
     | 
    
         
            +
            - spec/support/cassettes/accommodation_reserve.yml
         
     | 
| 
       461 
462 
     | 
    
         
             
            - spec/support/cassettes/basic_product_scheduled_trips.yml
         
     | 
| 
       462 
463 
     | 
    
         
             
            - spec/support/cassettes/basic_product_scheduled_trips_multi_sector.yml
         
     | 
| 
       463 
464 
     | 
    
         
             
            - spec/support/cassettes/basic_product_scheduled_trips_unbookable.yml
         
     | 
| 
         @@ -1,15 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            ### DELETE ME!  Left here only so you can pull out the constants for the few that we should be keeping.
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            module QuickTravel
         
     | 
| 
       4 
     | 
    
         
            -
              LOGIN_URL  = '/parties/login' # CMS_SSL_URL + '/parties/login'
         
     | 
| 
       5 
     | 
    
         
            -
             
     | 
| 
       6 
     | 
    
         
            -
              DEFAULT_LOCATION_ID_FOR_ACCOMM_SEARCH = 3 # Kingscote
         
     | 
| 
       7 
     | 
    
         
            -
              DEFAULT_REGION_ID_FOR_ACCOMM_SEARCH = 1   # Kangaroo Island
         
     | 
| 
       8 
     | 
    
         
            -
              DEFAULT_PROPERTY_TYPE_ID_FOR_ACCOMM_SEARCH = 1
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
              # System wide
         
     | 
| 
       11 
     | 
    
         
            -
              PROPERTY_CACHE_TIMEOUT = 1440 # minutes
         
     | 
| 
       12 
     | 
    
         
            -
              QT_DATE_FORMAT = '%d-%m-%Y'
         
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
              DEFAULT_REFERRAL_CODE_ID = 33
         
     | 
| 
       15 
     | 
    
         
            -
            end
         
     |