gillbus 0.18.6 → 0.18.7
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/lib/gillbus/search_trips.rb +5 -0
- data/lib/gillbus/structs/nearby_trip.rb +58 -0
- data/lib/gillbus/version.rb +1 -1
- data/lib/gillbus.rb +1 -0
- data/test/responses/searchTrips-nearby.xml +41 -0
- data/test/search_trips_test.rb +15 -0
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9b5254d67655669e73b597bb31908f098ef5809d
|
4
|
+
data.tar.gz: 6d6fb0a7f94fb778abf7b7e1bbbc19257cbd45e6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b668d5237ca23a6e8eb407615355d16d49f841f8024e4e98673b30aa479857a1c5e9ec32fff0270a91b7c37d271fe03832b19eb3f69acc320aad2aeecc4b3e09
|
7
|
+
data.tar.gz: 8c496874341822e74fa4091db0b6973c3197757cf08978a8550b65203f992997b0418f4a3041a4d25c03a6e76eb78b4a7078e6fbdfd57277edd61ebec03afda8
|
data/lib/gillbus/search_trips.rb
CHANGED
@@ -91,6 +91,9 @@ class Gillbus
|
|
91
91
|
|
92
92
|
attr_accessor :insurance_id
|
93
93
|
|
94
|
+
# extendedSearch number Признак отображения в результате поиска соседних городов
|
95
|
+
attr_accessor :extended_search
|
96
|
+
|
94
97
|
def params
|
95
98
|
compact(
|
96
99
|
selectedModes: modes(selected_modes),
|
@@ -107,6 +110,7 @@ class Gillbus
|
|
107
110
|
onlyBranded: bool(only_branded),
|
108
111
|
tripOptions: bool(trip_options),
|
109
112
|
insuranceId: insurance_id,
|
113
|
+
extendedSearch: extended_search,
|
110
114
|
**passengers_data,
|
111
115
|
)
|
112
116
|
end
|
@@ -132,6 +136,7 @@ class Gillbus
|
|
132
136
|
class Response < BaseResponse
|
133
137
|
field :completed, :bool
|
134
138
|
field :trips, [Trip], key: 'TRIP'
|
139
|
+
field :nearby_trips, [NearbyTrip], key: 'TRIP', root: 'NEARBY_CITIES'
|
135
140
|
end
|
136
141
|
end
|
137
142
|
end
|
@@ -0,0 +1,58 @@
|
|
1
|
+
# результаты поиска по соседним городам, берется из кеша и содержит меньше данных, чем поездка из выдачи
|
2
|
+
class Gillbus
|
3
|
+
class NearbyTrip
|
4
|
+
extend Fields
|
5
|
+
include UpdateAttrs
|
6
|
+
|
7
|
+
# => "Москва"
|
8
|
+
field :start_city_name
|
9
|
+
|
10
|
+
# => "A7CD147C07E7CD1BE040A8C0630328EC"
|
11
|
+
field :start_city_guid
|
12
|
+
|
13
|
+
# => "Europe/Moscow"
|
14
|
+
field :start_timezone
|
15
|
+
|
16
|
+
# => 20
|
17
|
+
field :distance_to_start
|
18
|
+
|
19
|
+
# => "Смоленск"
|
20
|
+
field :end_city_name
|
21
|
+
|
22
|
+
# => "DD253CDEE7D1555EE040B8596052093F"
|
23
|
+
field :end_city_guid
|
24
|
+
|
25
|
+
# => "Europe/Moscow"
|
26
|
+
field :end_timezone
|
27
|
+
|
28
|
+
# => "22:50"
|
29
|
+
field :start_time, :time # XXX
|
30
|
+
|
31
|
+
# => "08:00"
|
32
|
+
field :end_time, :time # XXX
|
33
|
+
|
34
|
+
# => ""Автофлот Автоколонна-1601" ООО"
|
35
|
+
field :carrier_name # XXX
|
36
|
+
|
37
|
+
# => "RU "Автофлот Автоколонна-1601" ООО"
|
38
|
+
field :carrier_legal_name # XXX
|
39
|
+
|
40
|
+
# => "390"
|
41
|
+
field :time_in_road
|
42
|
+
|
43
|
+
# => "1100"
|
44
|
+
field :total_cost, :money
|
45
|
+
|
46
|
+
# => "RUB"
|
47
|
+
field :currency
|
48
|
+
|
49
|
+
parser do
|
50
|
+
def money(val)
|
51
|
+
Monetize.parse(val, doc['CURRENCY'])
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
# to hold unserialized data
|
56
|
+
attr_accessor :data
|
57
|
+
end
|
58
|
+
end
|
data/lib/gillbus/version.rb
CHANGED
data/lib/gillbus.rb
CHANGED
@@ -0,0 +1,41 @@
|
|
1
|
+
<DATA>
|
2
|
+
<COMPLETED>true</COMPLETED>
|
3
|
+
<NEARBY_CITIES>
|
4
|
+
<TRIP>
|
5
|
+
<START_CITY_NAME>Москва</START_CITY_NAME>
|
6
|
+
<START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
|
7
|
+
<START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
|
8
|
+
<DISTANCE_TO_START>20</DISTANCE_TO_START>
|
9
|
+
<END_CITY_NAME>Санкт-Петербург</END_CITY_NAME>
|
10
|
+
<END_CITY_GUID>CA975BC2ACDBCF7FE040B859C14327B3</END_CITY_GUID>
|
11
|
+
<END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
|
12
|
+
<DISTANCE_TO_END>0</DISTANCE_TO_END>
|
13
|
+
<START_TIME>21:30</START_TIME>
|
14
|
+
<END_TIME>08:45</END_TIME>
|
15
|
+
<CARRIER_NAME>"Авто-Транс-Ком" ООО </CARRIER_NAME>
|
16
|
+
<CARRIER_LEGAL_NAME>RU "Авто-Транс-Ком" ООО </CARRIER_LEGAL_NAME>
|
17
|
+
<TIME_IN_ROAD>675</TIME_IN_ROAD>
|
18
|
+
<TOTAL_COST>1200</TOTAL_COST>
|
19
|
+
<CURRENCY>RUB</CURRENCY>
|
20
|
+
<CURRENCY_CODE>643</CURRENCY_CODE>
|
21
|
+
</TRIP>
|
22
|
+
<TRIP>
|
23
|
+
<START_CITY_NAME>Москва</START_CITY_NAME>
|
24
|
+
<START_CITY_GUID>A7CD147C07E7CD1BE040A8C0630328EC</START_CITY_GUID>
|
25
|
+
<START_TIMEZONE>Europe/Moscow</START_TIMEZONE>
|
26
|
+
<DISTANCE_TO_START>20</DISTANCE_TO_START>
|
27
|
+
<END_CITY_NAME>Санкт-Петербург</END_CITY_NAME>
|
28
|
+
<END_CITY_GUID>CA975BC2ACDBCF7FE040B859C14327B3</END_CITY_GUID>
|
29
|
+
<END_TIMEZONE>Europe/Moscow</END_TIMEZONE>
|
30
|
+
<DISTANCE_TO_END>0</DISTANCE_TO_END>
|
31
|
+
<START_TIME>21:30</START_TIME>
|
32
|
+
<END_TIME>09:00</END_TIME>
|
33
|
+
<CARRIER_NAME>"Автофлот Автоколонна-1601" ООО</CARRIER_NAME>
|
34
|
+
<CARRIER_LEGAL_NAME>RU "Автофлот Автоколонна-1601" ООО</CARRIER_LEGAL_NAME>
|
35
|
+
<TIME_IN_ROAD>690</TIME_IN_ROAD>
|
36
|
+
<TOTAL_COST>1000</TOTAL_COST>
|
37
|
+
<CURRENCY>RUB</CURRENCY>
|
38
|
+
<CURRENCY_CODE>643</CURRENCY_CODE>
|
39
|
+
</TRIP>
|
40
|
+
</NEARBY_CITIES>
|
41
|
+
</DATA>
|
data/test/search_trips_test.rb
CHANGED
@@ -65,6 +65,10 @@ class SearchTripsResponseTest < Minitest::Test
|
|
65
65
|
Gillbus::SearchTrips::Response.parse_string(File.read('test/responses/searchTrips-insurance.xml'))
|
66
66
|
end
|
67
67
|
|
68
|
+
def get_trips_with_nearby_cities
|
69
|
+
Gillbus::SearchTrips::Response.parse_string(File.read('test/responses/searchTrips-nearby.xml'))
|
70
|
+
end
|
71
|
+
|
68
72
|
def test_empty_completed
|
69
73
|
response = get_empty_search_trips
|
70
74
|
assert response.completed
|
@@ -235,4 +239,15 @@ class SearchTripsResponseTest < Minitest::Test
|
|
235
239
|
assert_equal 1, tariff.insurance_id
|
236
240
|
assert_equal '100000 RUB'.to_money, tariff.insurance_sum
|
237
241
|
end
|
242
|
+
|
243
|
+
def test_trips_with_nearby_cities
|
244
|
+
response = get_trips_with_nearby_cities
|
245
|
+
assert response.completed
|
246
|
+
trip = response.nearby_trips.first
|
247
|
+
assert_equal 'Москва', trip.start_city_name
|
248
|
+
assert_equal 'Санкт-Петербург', trip.end_city_name
|
249
|
+
assert_equal '1200 RUB'.to_money, trip.total_cost
|
250
|
+
assert_equal '"Авто-Транс-Ком" ООО ', trip.carrier_name
|
251
|
+
assert_equal '21:30', trip.start_time
|
252
|
+
end
|
238
253
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gillbus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.18.
|
4
|
+
version: 0.18.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexey "codesnik" Trofimenko
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-08-
|
12
|
+
date: 2018-08-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|
@@ -204,6 +204,7 @@ files:
|
|
204
204
|
- lib/gillbus/structs/carrier.rb
|
205
205
|
- lib/gillbus/structs/commission.rb
|
206
206
|
- lib/gillbus/structs/item.rb
|
207
|
+
- lib/gillbus/structs/nearby_trip.rb
|
207
208
|
- lib/gillbus/structs/passenger_discount.rb
|
208
209
|
- lib/gillbus/structs/point.rb
|
209
210
|
- lib/gillbus/structs/return_cause.rb
|
@@ -265,6 +266,7 @@ files:
|
|
265
266
|
- test/responses/returnPositionSuccess.xml
|
266
267
|
- test/responses/searchTrips-empty.xml
|
267
268
|
- test/responses/searchTrips-insurance.xml
|
269
|
+
- test/responses/searchTrips-nearby.xml
|
268
270
|
- test/responses/searchTrips-prod-invalid.xml
|
269
271
|
- test/responses/searchTrips-prod.xml
|
270
272
|
- test/responses/searchTrips-segments-roundtrip.xml
|
@@ -343,6 +345,7 @@ test_files:
|
|
343
345
|
- test/responses/returnPositionSuccess.xml
|
344
346
|
- test/responses/searchTrips-empty.xml
|
345
347
|
- test/responses/searchTrips-insurance.xml
|
348
|
+
- test/responses/searchTrips-nearby.xml
|
346
349
|
- test/responses/searchTrips-prod-invalid.xml
|
347
350
|
- test/responses/searchTrips-prod.xml
|
348
351
|
- test/responses/searchTrips-segments-roundtrip.xml
|