Skip to content

Commit 24a2519

Browse files
authored
Merge pull request #28 from hoteltonight/cl_add_accessors_for_pickup_and_dest_to_request
add accessors for pickup, destination to Request model
2 parents 6a0fcf5 + 299dd72 commit 24a2519

2 files changed

Lines changed: 28 additions & 2 deletions

File tree

lib/uber/models/request.rb

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module Uber
22
class Request < Base
3-
attr_accessor :request_id, :status, :vehicle, :driver, :location, :eta, :surge_multiplier, :meta, :errors
3+
attr_accessor :request_id, :status, :vehicle, :driver, :location, :pickup, :destination, :eta, :surge_multiplier, :meta, :errors
44

55
def driver=(value)
66
@driver = value.nil? ? nil : Driver.new(value)
@@ -14,6 +14,14 @@ def location=(value)
1414
@location = value.nil? ? nil : Location.new(value)
1515
end
1616

17+
def pickup=(value)
18+
@pickup = value.nil? ? nil : Location.new(value)
19+
end
20+
21+
def destination=(value)
22+
@destination = value.nil? ? nil : Location.new(value)
23+
end
24+
1725
def errors=(values)
1826
@errors = values.map { |v| RequestError.new(v) }
1927
end
@@ -50,6 +58,6 @@ class Vehicle < Base
5058
end
5159

5260
class Location < Base
53-
attr_accessor :latitude, :longitude, :bearing
61+
attr_accessor :latitude, :longitude, :bearing, :eta
5462
end
5563
end

spec/lib/api/requests_spec.rb

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,6 +248,16 @@
248248
"longitude" => -122.418143,
249249
"bearing" => 33
250250
},
251+
"pickup" => {
252+
"latitude" => 0.0,
253+
"longitude" => 0.5,
254+
"eta" => 5
255+
},
256+
"destination" => {
257+
"latitude" => 0.0,
258+
"longitude" => 0.6,
259+
"eta" => 19
260+
},
251261
"vehicle" => {
252262
"make" => "Bugatti",
253263
"model" => "Veyron",
@@ -276,6 +286,14 @@
276286
expect(request.location.longitude).to eql -122.418143
277287
expect(request.location.bearing).to eql 33
278288

289+
expect(request.pickup.latitude).to eql 0.0
290+
expect(request.pickup.longitude).to eql 0.5
291+
expect(request.pickup.eta).to eql 5
292+
293+
expect(request.destination.latitude).to eql 0.0
294+
expect(request.destination.longitude).to eql 0.6
295+
expect(request.destination.eta).to eql 19
296+
279297
expect(request.vehicle.make).to eql 'Bugatti'
280298
expect(request.vehicle.model).to eql 'Veyron'
281299
expect(request.vehicle.license_plate).to eql 'I<3Uber'

0 commit comments

Comments
 (0)