smartcar 3.7.0 → 3.8.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/.rubocop.yml +8 -0
- data/.travis.yml +2 -3
- data/Gemfile.lock +39 -37
- data/lib/smartcar/utils.rb +3 -1
- data/lib/smartcar/vehicle.rb +20 -0
- data/lib/smartcar/version.rb +1 -1
- data/ruby-sdk.gemspec +0 -1
- metadata +2 -16
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: fd4fcc86e7eb35c94b63f0546a0cac9795b8c9413e91da0631ddc04658e8d928
|
|
4
|
+
data.tar.gz: 414d4999f1919ef259a9eaee0733e4e23bf60f29a53d667684c41142c88f3f91
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 94512a886faac4382679adb6c6dc23464095e749907caab77c30914993cb12b084e1ea2377df9767b7bc855a14691204afb517764afa95242c4bd27575ef1695
|
|
7
|
+
data.tar.gz: 4f1649632ff635bf6d6a806761b33c9fbd180f572ee31b30a5584971c3a3bcbe9407b3778a3d3acbcf9d22ff7ca3fd7aedad95975735ae3877bcb52f044613ee
|
data/.rubocop.yml
CHANGED
|
@@ -3,6 +3,14 @@ AllCops:
|
|
|
3
3
|
NewCops: enable
|
|
4
4
|
SuggestExtensions: false
|
|
5
5
|
|
|
6
|
+
# Disabling for now. Will when updating to 3.1 and 3.2
|
|
7
|
+
Gemspec/DevelopmentDependencies:
|
|
8
|
+
Enabled: false
|
|
9
|
+
|
|
10
|
+
# Disabling for now. Will when updating to 3.1 and 3.2
|
|
11
|
+
Gemspec/RequiredRubyVersion:
|
|
12
|
+
Enabled: false
|
|
13
|
+
|
|
6
14
|
# Disabling ABC size for now as refactoring few places seems pointless for now
|
|
7
15
|
Metrics/AbcSize:
|
|
8
16
|
Enabled: false
|
data/.travis.yml
CHANGED
|
@@ -6,11 +6,10 @@ services:
|
|
|
6
6
|
addons:
|
|
7
7
|
firefox: latest
|
|
8
8
|
rvm:
|
|
9
|
-
- 2.6
|
|
10
9
|
- 2.7
|
|
11
10
|
- 3.0
|
|
12
11
|
before_install:
|
|
13
|
-
- gem install bundler -v 2.1
|
|
12
|
+
- gem install bundler -v 2.3.1
|
|
14
13
|
- wget https://github.com/mozilla/geckodriver/releases/download/v0.26.0/geckodriver-v0.26.0-linux64.tar.gz
|
|
15
14
|
- mkdir geckodriver
|
|
16
15
|
- tar -xzf geckodriver-v0.26.0-linux64.tar.gz -C geckodriver
|
|
@@ -25,5 +24,5 @@ deploy:
|
|
|
25
24
|
on:
|
|
26
25
|
tags: true
|
|
27
26
|
branch: master
|
|
28
|
-
rvm: 2.
|
|
27
|
+
rvm: 2.7
|
|
29
28
|
skip_cleanup: 'true'
|
data/Gemfile.lock
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
smartcar (3.
|
|
4
|
+
smartcar (3.8.0)
|
|
5
5
|
oauth2 (~> 1.4)
|
|
6
6
|
recursive-open-struct (~> 1.1.3)
|
|
7
7
|
|
|
8
8
|
GEM
|
|
9
9
|
remote: https://rubygems.org/
|
|
10
10
|
specs:
|
|
11
|
-
addressable (2.8.
|
|
12
|
-
public_suffix (>= 2.0.2, <
|
|
11
|
+
addressable (2.8.5)
|
|
12
|
+
public_suffix (>= 2.0.2, < 6.0)
|
|
13
13
|
ast (2.4.2)
|
|
14
|
-
|
|
14
|
+
base64 (0.2.0)
|
|
15
15
|
byebug (11.1.3)
|
|
16
16
|
childprocess (4.1.0)
|
|
17
17
|
codecov (0.5.2)
|
|
@@ -20,12 +20,15 @@ GEM
|
|
|
20
20
|
rexml
|
|
21
21
|
diff-lcs (1.5.0)
|
|
22
22
|
docile (1.4.0)
|
|
23
|
-
faraday (2.7.
|
|
23
|
+
faraday (2.7.12)
|
|
24
|
+
base64
|
|
24
25
|
faraday-net_http (>= 2.0, < 3.1)
|
|
25
26
|
ruby2_keywords (>= 0.0.4)
|
|
26
27
|
faraday-net_http (3.0.2)
|
|
27
28
|
hashdiff (1.0.1)
|
|
29
|
+
json (2.7.1)
|
|
28
30
|
jwt (2.7.1)
|
|
31
|
+
language_server-protocol (3.17.0.3)
|
|
29
32
|
multi_json (1.15.0)
|
|
30
33
|
multi_xml (0.6.0)
|
|
31
34
|
oauth2 (1.4.11)
|
|
@@ -34,45 +37,46 @@ GEM
|
|
|
34
37
|
multi_json (~> 1.3)
|
|
35
38
|
multi_xml (~> 0.5)
|
|
36
39
|
rack (>= 1.2, < 4)
|
|
37
|
-
parallel (1.
|
|
38
|
-
parser (3.
|
|
40
|
+
parallel (1.23.0)
|
|
41
|
+
parser (3.2.2.4)
|
|
39
42
|
ast (~> 2.4.1)
|
|
40
|
-
|
|
43
|
+
racc
|
|
44
|
+
public_suffix (5.0.4)
|
|
45
|
+
racc (1.7.3)
|
|
41
46
|
rack (3.0.8)
|
|
42
47
|
rainbow (3.1.1)
|
|
43
48
|
rake (12.3.3)
|
|
44
|
-
readapt (1.4.3)
|
|
45
|
-
backport (~> 1.2)
|
|
46
|
-
thor (~> 1.0)
|
|
47
49
|
recursive-open-struct (1.1.3)
|
|
48
50
|
redcarpet (3.5.1)
|
|
49
|
-
regexp_parser (2.
|
|
50
|
-
rexml (3.2.
|
|
51
|
-
rspec (3.
|
|
52
|
-
rspec-core (~> 3.
|
|
53
|
-
rspec-expectations (~> 3.
|
|
54
|
-
rspec-mocks (~> 3.
|
|
55
|
-
rspec-core (3.
|
|
56
|
-
rspec-support (~> 3.
|
|
57
|
-
rspec-expectations (3.
|
|
51
|
+
regexp_parser (2.8.3)
|
|
52
|
+
rexml (3.2.6)
|
|
53
|
+
rspec (3.12.0)
|
|
54
|
+
rspec-core (~> 3.12.0)
|
|
55
|
+
rspec-expectations (~> 3.12.0)
|
|
56
|
+
rspec-mocks (~> 3.12.0)
|
|
57
|
+
rspec-core (3.12.2)
|
|
58
|
+
rspec-support (~> 3.12.0)
|
|
59
|
+
rspec-expectations (3.12.3)
|
|
58
60
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
59
|
-
rspec-support (~> 3.
|
|
60
|
-
rspec-mocks (3.
|
|
61
|
+
rspec-support (~> 3.12.0)
|
|
62
|
+
rspec-mocks (3.12.6)
|
|
61
63
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
62
|
-
rspec-support (~> 3.
|
|
63
|
-
rspec-support (3.
|
|
64
|
-
rubocop (1.
|
|
64
|
+
rspec-support (~> 3.12.0)
|
|
65
|
+
rspec-support (3.12.1)
|
|
66
|
+
rubocop (1.58.0)
|
|
67
|
+
json (~> 2.3)
|
|
68
|
+
language_server-protocol (>= 3.17.0)
|
|
65
69
|
parallel (~> 1.10)
|
|
66
|
-
parser (>= 3.
|
|
70
|
+
parser (>= 3.2.2.4)
|
|
67
71
|
rainbow (>= 2.2.2, < 4.0)
|
|
68
72
|
regexp_parser (>= 1.8, < 3.0)
|
|
69
|
-
rexml
|
|
70
|
-
rubocop-ast (>= 1.
|
|
73
|
+
rexml (>= 3.2.5, < 4.0)
|
|
74
|
+
rubocop-ast (>= 1.30.0, < 2.0)
|
|
71
75
|
ruby-progressbar (~> 1.7)
|
|
72
|
-
unicode-display_width (>=
|
|
73
|
-
rubocop-ast (1.
|
|
74
|
-
parser (>= 3.
|
|
75
|
-
ruby-progressbar (1.
|
|
76
|
+
unicode-display_width (>= 2.4.0, < 3.0)
|
|
77
|
+
rubocop-ast (1.30.0)
|
|
78
|
+
parser (>= 3.2.1.0)
|
|
79
|
+
ruby-progressbar (1.13.0)
|
|
76
80
|
ruby2_keywords (0.0.5)
|
|
77
81
|
rubyzip (2.3.2)
|
|
78
82
|
selenium-webdriver (4.1.0)
|
|
@@ -84,10 +88,9 @@ GEM
|
|
|
84
88
|
simplecov-html (~> 0.11)
|
|
85
89
|
simplecov_json_formatter (~> 0.1)
|
|
86
90
|
simplecov-html (0.12.3)
|
|
87
|
-
simplecov_json_formatter (0.1.
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
webmock (3.14.0)
|
|
91
|
+
simplecov_json_formatter (0.1.4)
|
|
92
|
+
unicode-display_width (2.5.0)
|
|
93
|
+
webmock (3.19.1)
|
|
91
94
|
addressable (>= 2.8.0)
|
|
92
95
|
crack (>= 0.3.2)
|
|
93
96
|
hashdiff (>= 0.4.0, < 2.0.0)
|
|
@@ -101,7 +104,6 @@ DEPENDENCIES
|
|
|
101
104
|
byebug (~> 11.0)
|
|
102
105
|
codecov (~> 0.5.2)
|
|
103
106
|
rake (~> 12.3, >= 12.3.3)
|
|
104
|
-
readapt (~> 1.3)
|
|
105
107
|
redcarpet (~> 3.5.0)
|
|
106
108
|
rspec (~> 3.0)
|
|
107
109
|
rubocop (~> 1.12)
|
data/lib/smartcar/utils.rb
CHANGED
|
@@ -22,7 +22,7 @@ module Smartcar
|
|
|
22
22
|
config_name = "E2E_#{config_name}" if ENV['MODE'] == 'test'
|
|
23
23
|
raise Smartcar::ConfigNotFound, "Environment variable #{config_name} not found !" unless ENV[config_name]
|
|
24
24
|
|
|
25
|
-
ENV
|
|
25
|
+
ENV.fetch(config_name, nil)
|
|
26
26
|
end
|
|
27
27
|
|
|
28
28
|
# Converts a hash to RecursiveOpenStruct (a powered up OpenStruct object).
|
|
@@ -59,7 +59,9 @@ module Smartcar
|
|
|
59
59
|
|
|
60
60
|
def build_aliases(response, aliases)
|
|
61
61
|
(aliases || []).each do |original_name, alias_name|
|
|
62
|
+
# rubocop:disable Lint/SymbolConversion
|
|
62
63
|
response.send("#{alias_name}=".to_sym, response.send(original_name.to_sym))
|
|
64
|
+
# rubocop:enable Lint/SymbolConversion
|
|
63
65
|
end
|
|
64
66
|
|
|
65
67
|
response
|
data/lib/smartcar/vehicle.rb
CHANGED
|
@@ -71,6 +71,12 @@ module Smartcar
|
|
|
71
71
|
body: proc { |limit| { limit: limit } },
|
|
72
72
|
skip: true
|
|
73
73
|
},
|
|
74
|
+
send_destination!: {
|
|
75
|
+
type: :post,
|
|
76
|
+
path: proc { |id| "/vehicles/#{id}/navigation/destination" },
|
|
77
|
+
body: proc { |latitude, longitude| { latitude: latitude, longitude: longitude } },
|
|
78
|
+
skip: true
|
|
79
|
+
},
|
|
74
80
|
subscribe!: {
|
|
75
81
|
type: :post,
|
|
76
82
|
path: proc { |id, webhook_id| "/vehicles/#{id}/webhooks/#{webhook_id}" },
|
|
@@ -266,6 +272,20 @@ module Smartcar
|
|
|
266
272
|
build_response(response, headers)
|
|
267
273
|
end
|
|
268
274
|
|
|
275
|
+
# Send coordinates to the vehicle's navigation system
|
|
276
|
+
#
|
|
277
|
+
# @param latitude [float] value representing the destination's latitude
|
|
278
|
+
# @param longitude [float] value representing the destination's longitude
|
|
279
|
+
|
|
280
|
+
# @return [OpenStruct] Meta attribute with the relevant items from response headers
|
|
281
|
+
def send_destination!(latitude, longitude)
|
|
282
|
+
method_config = METHODS[:send_destination!]
|
|
283
|
+
|
|
284
|
+
response, headers = post(method_config[:path].call(id), @query_params,
|
|
285
|
+
method_config[:body].call(latitude, longitude))
|
|
286
|
+
build_response(response, headers)
|
|
287
|
+
end
|
|
288
|
+
|
|
269
289
|
# Method to get batch requests.
|
|
270
290
|
# API - https://smartcar.com/docs/api#post-batch-request
|
|
271
291
|
# @param paths [Array] Array of paths as strings. Ex ['/battery', '/odometer']
|
data/lib/smartcar/version.rb
CHANGED
data/ruby-sdk.gemspec
CHANGED
|
@@ -30,7 +30,6 @@ Gem::Specification.new do |spec|
|
|
|
30
30
|
spec.add_development_dependency 'byebug', '~> 11.0'
|
|
31
31
|
spec.add_development_dependency 'codecov', '~> 0.5.2'
|
|
32
32
|
spec.add_development_dependency 'rake', '~> 12.3', '>= 12.3.3'
|
|
33
|
-
spec.add_development_dependency 'readapt', '~> 1.3'
|
|
34
33
|
spec.add_development_dependency 'redcarpet', '~> 3.5.0'
|
|
35
34
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
|
36
35
|
spec.add_development_dependency 'rubocop', '~> 1.12'
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: smartcar
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.
|
|
4
|
+
version: 3.8.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ashwin Subramanian
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-
|
|
11
|
+
date: 2023-12-19 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -72,20 +72,6 @@ dependencies:
|
|
|
72
72
|
- - ">="
|
|
73
73
|
- !ruby/object:Gem::Version
|
|
74
74
|
version: 12.3.3
|
|
75
|
-
- !ruby/object:Gem::Dependency
|
|
76
|
-
name: readapt
|
|
77
|
-
requirement: !ruby/object:Gem::Requirement
|
|
78
|
-
requirements:
|
|
79
|
-
- - "~>"
|
|
80
|
-
- !ruby/object:Gem::Version
|
|
81
|
-
version: '1.3'
|
|
82
|
-
type: :development
|
|
83
|
-
prerelease: false
|
|
84
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
85
|
-
requirements:
|
|
86
|
-
- - "~>"
|
|
87
|
-
- !ruby/object:Gem::Version
|
|
88
|
-
version: '1.3'
|
|
89
75
|
- !ruby/object:Gem::Dependency
|
|
90
76
|
name: redcarpet
|
|
91
77
|
requirement: !ruby/object:Gem::Requirement
|