my_john_deere_api 2.2.0 → 2.2.1
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/my_john_deere_api/model/base.rb +3 -3
- data/lib/my_john_deere_api/request/collection/base.rb +1 -1
- data/lib/my_john_deere_api/request/create/base.rb +1 -1
- data/lib/my_john_deere_api/request/individual/base.rb +3 -3
- data/lib/my_john_deere_api/version.rb +1 -1
- data/test/lib/my_john_deere_api/model/asset_location_test.rb +3 -7
- data/test/lib/my_john_deere_api/model/asset_test.rb +9 -20
- data/test/lib/my_john_deere_api/model/base_test.rb +17 -15
- data/test/lib/my_john_deere_api/model/contribution_definition_test.rb +5 -7
- data/test/lib/my_john_deere_api/model/contribution_product_test.rb +6 -8
- data/test/lib/my_john_deere_api/model/field_test.rb +4 -16
- data/test/lib/my_john_deere_api/model/flag_test.rb +13 -17
- data/test/lib/my_john_deere_api/model/organization_test.rb +4 -22
- data/test/lib/my_john_deere_api/request/update/asset_test.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: eb14a8c4e0fb2065e96d8a7f9bcff1502c2af26f3d312992765aecf36d15000f
|
|
4
|
+
data.tar.gz: 6d4095d5d77723b5b0e3e14dac54f414b28b998b6653fe85eecd7d2141de7aeb
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 31c66ca8dad9ce28792a20c61323c967cffb704f006ff752f11492d60ab458e81f462b5aee043bab130d0941c9ac37f9c667a4f57bf77e4885930502d2952bb6
|
|
7
|
+
data.tar.gz: f2dda7cbed562b64376dc86609048a2b55eef468a4b745ca1bc785da7fea38741b2adc8f396832419078758801369e4c2a03a95661b60728b7d814c29b6fdb12
|
|
@@ -8,14 +8,14 @@ module MyJohnDeereApi
|
|
|
8
8
|
##
|
|
9
9
|
# arguments:
|
|
10
10
|
#
|
|
11
|
-
# [record] a JSON object of type 'Field', returned from the API.
|
|
12
|
-
#
|
|
13
11
|
# [client] the client, because it contains all the config info.
|
|
14
12
|
# The alternative would be a true Config block, but then
|
|
15
13
|
# settings would be app-wide. This allows one app to have
|
|
16
14
|
# multiple clients with different settings.
|
|
15
|
+
#
|
|
16
|
+
# [record] a JSON object of type 'Field', returned from the API.
|
|
17
17
|
|
|
18
|
-
def initialize(
|
|
18
|
+
def initialize(client, record)
|
|
19
19
|
verify_record_type(record['@type'])
|
|
20
20
|
|
|
21
21
|
@id = record['id']
|
|
@@ -12,10 +12,10 @@ module MyJohnDeereApi::Request
|
|
|
12
12
|
@id = id
|
|
13
13
|
@associations = associations
|
|
14
14
|
end
|
|
15
|
-
|
|
15
|
+
|
|
16
16
|
##
|
|
17
17
|
# client accessor
|
|
18
|
-
|
|
18
|
+
|
|
19
19
|
def accessor
|
|
20
20
|
return @accessor if defined?(@accessor)
|
|
21
21
|
@accessor = client&.accessor
|
|
@@ -28,7 +28,7 @@ module MyJohnDeereApi::Request
|
|
|
28
28
|
return @object if defined?(@object)
|
|
29
29
|
|
|
30
30
|
request unless response
|
|
31
|
-
@object = model.new(JSON.parse(response.body)
|
|
31
|
+
@object = model.new(client, JSON.parse(response.body))
|
|
32
32
|
end
|
|
33
33
|
|
|
34
34
|
private
|
|
@@ -20,9 +20,10 @@ describe 'MyJohnDeereApi::Model::AssetLocation' do
|
|
|
20
20
|
end
|
|
21
21
|
|
|
22
22
|
it 'sets the attributes from the given record' do
|
|
23
|
-
location = klass.new(record)
|
|
23
|
+
location = klass.new(client, record)
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
assert_equal client, location.client
|
|
26
|
+
assert_equal accessor, location.accessor
|
|
26
27
|
|
|
27
28
|
# basic attributes
|
|
28
29
|
assert_equal record['timestamp'], location.timestamp
|
|
@@ -33,10 +34,5 @@ describe 'MyJohnDeereApi::Model::AssetLocation' do
|
|
|
33
34
|
assert_kind_of Hash, location.links
|
|
34
35
|
assert_equal 0, location.links.size
|
|
35
36
|
end
|
|
36
|
-
|
|
37
|
-
it 'accepts an optional client' do
|
|
38
|
-
location = klass.new(record, client)
|
|
39
|
-
assert_equal client, location.client
|
|
40
|
-
end
|
|
41
37
|
end
|
|
42
38
|
end
|
|
@@ -26,9 +26,10 @@ describe 'MyJohnDeereApi::Model::Asset' do
|
|
|
26
26
|
end
|
|
27
27
|
|
|
28
28
|
it 'sets the attributes from the given record' do
|
|
29
|
-
asset = klass.new(record)
|
|
29
|
+
asset = klass.new(client, record)
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
assert_equal client, asset.client
|
|
32
|
+
assert_equal accessor, asset.accessor
|
|
32
33
|
|
|
33
34
|
# basic attributes
|
|
34
35
|
assert_equal record['id'], asset.id
|
|
@@ -45,16 +46,11 @@ describe 'MyJohnDeereApi::Model::Asset' do
|
|
|
45
46
|
assert_equal link_for(association), asset.links[association]
|
|
46
47
|
end
|
|
47
48
|
end
|
|
48
|
-
|
|
49
|
-
it 'accepts an optional client' do
|
|
50
|
-
asset = klass.new(record, client)
|
|
51
|
-
assert_equal client, asset.client
|
|
52
|
-
end
|
|
53
49
|
end
|
|
54
50
|
|
|
55
51
|
describe '#attributes' do
|
|
56
52
|
it 'converts properties back to an attributes hash' do
|
|
57
|
-
asset = klass.new(
|
|
53
|
+
asset = klass.new(client, record)
|
|
58
54
|
attributes = asset.attributes
|
|
59
55
|
|
|
60
56
|
assert_equal asset.id, attributes[:id]
|
|
@@ -67,7 +63,7 @@ describe 'MyJohnDeereApi::Model::Asset' do
|
|
|
67
63
|
|
|
68
64
|
describe '#save' do
|
|
69
65
|
it 'sends any recent updates to John Deere' do
|
|
70
|
-
asset = klass.new(
|
|
66
|
+
asset = klass.new(client, record)
|
|
71
67
|
new_title = 'i REALLY like turtles!'
|
|
72
68
|
|
|
73
69
|
asset.title = new_title
|
|
@@ -78,14 +74,14 @@ describe 'MyJohnDeereApi::Model::Asset' do
|
|
|
78
74
|
end
|
|
79
75
|
|
|
80
76
|
it 'does not make a JD request if nothing has changed' do
|
|
81
|
-
asset = klass.new(
|
|
77
|
+
asset = klass.new(client, record)
|
|
82
78
|
response = asset.save
|
|
83
79
|
|
|
84
80
|
assert_nil response
|
|
85
81
|
end
|
|
86
82
|
|
|
87
83
|
it 'marks the record as saved' do
|
|
88
|
-
asset = klass.new(
|
|
84
|
+
asset = klass.new(client, record)
|
|
89
85
|
asset.title = 'i REALLY like turtles!'
|
|
90
86
|
|
|
91
87
|
response = VCR.use_cassette('put_asset') { asset.save }
|
|
@@ -98,7 +94,7 @@ describe 'MyJohnDeereApi::Model::Asset' do
|
|
|
98
94
|
|
|
99
95
|
describe '#update' do
|
|
100
96
|
it 'updates the attributes' do
|
|
101
|
-
asset = klass.new(
|
|
97
|
+
asset = klass.new(client, record)
|
|
102
98
|
|
|
103
99
|
new_title = 'i REALLY like turtles!'
|
|
104
100
|
VCR.use_cassette('put_asset') { asset.update(title: new_title) }
|
|
@@ -108,7 +104,7 @@ describe 'MyJohnDeereApi::Model::Asset' do
|
|
|
108
104
|
end
|
|
109
105
|
|
|
110
106
|
it 'sends the update to John Deere' do
|
|
111
|
-
asset = klass.new(
|
|
107
|
+
asset = klass.new(client, record)
|
|
112
108
|
|
|
113
109
|
new_title = 'i REALLY like turtles!'
|
|
114
110
|
response = VCR.use_cassette('put_asset') { asset.update(title: new_title) }
|
|
@@ -133,12 +129,5 @@ describe 'MyJohnDeereApi::Model::Asset' do
|
|
|
133
129
|
assert_kind_of JD::Model::AssetLocation, location
|
|
134
130
|
end
|
|
135
131
|
end
|
|
136
|
-
|
|
137
|
-
it 'raises an exception if an accessor is not available' do
|
|
138
|
-
asset = klass.new(record)
|
|
139
|
-
|
|
140
|
-
exception = assert_raises(JD::AccessTokenError) { asset.locations }
|
|
141
|
-
assert_includes exception.message, 'Access Token must be supplied'
|
|
142
|
-
end
|
|
143
132
|
end
|
|
144
133
|
end
|
|
@@ -10,7 +10,7 @@ end
|
|
|
10
10
|
|
|
11
11
|
describe 'MyJohnDeereApi::Model::Base' do
|
|
12
12
|
let(:klass) { JD::Model::Base }
|
|
13
|
-
let(:object) { klass.new(
|
|
13
|
+
let(:object) { klass.new(client, record) }
|
|
14
14
|
|
|
15
15
|
let(:record) do
|
|
16
16
|
{
|
|
@@ -30,22 +30,29 @@ describe 'MyJohnDeereApi::Model::Base' do
|
|
|
30
30
|
assert_includes object.private_methods, :id_from_uri
|
|
31
31
|
end
|
|
32
32
|
|
|
33
|
-
describe '#initialize(
|
|
33
|
+
describe '#initialize(client, record)' do
|
|
34
34
|
def link_for label
|
|
35
35
|
record['links'].detect{|link| link['rel'] == label}['uri'].gsub('https://sandboxapi.deere.com/platform', '')
|
|
36
36
|
end
|
|
37
37
|
|
|
38
|
-
|
|
39
|
-
record
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
describe 'when the wrong record type is passed' do
|
|
39
|
+
let(:record) do
|
|
40
|
+
{
|
|
41
|
+
'@type'=>'WrongType',
|
|
42
|
+
'links'=>[]
|
|
43
|
+
}
|
|
44
|
+
end
|
|
43
45
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
+
it 'raises a TypeMismatch error' do
|
|
47
|
+
exception = assert_raises(JD::TypeMismatchError) { object }
|
|
48
|
+
assert_equal "Expected record of type 'Base', but received type 'WrongType'", exception.message
|
|
49
|
+
end
|
|
46
50
|
end
|
|
47
51
|
|
|
48
52
|
it 'sets the base attributes' do
|
|
53
|
+
assert_equal client, object.client
|
|
54
|
+
assert_equal accessor, object.accessor
|
|
55
|
+
|
|
49
56
|
assert_equal record['id'], object.id
|
|
50
57
|
assert_equal record['@type'], object.record_type
|
|
51
58
|
assert_equal client, object.client
|
|
@@ -62,13 +69,8 @@ describe 'MyJohnDeereApi::Model::Base' do
|
|
|
62
69
|
end
|
|
63
70
|
|
|
64
71
|
it 'maps additional fields in subclasses' do
|
|
65
|
-
object = SampleModel.new(record)
|
|
72
|
+
object = SampleModel.new(client, record)
|
|
66
73
|
assert_equal 'somevalue', object.somefield
|
|
67
74
|
end
|
|
68
|
-
|
|
69
|
-
it 'does not require client' do
|
|
70
|
-
object = klass.new(record)
|
|
71
|
-
assert_nil object.client
|
|
72
|
-
end
|
|
73
75
|
end
|
|
74
76
|
end
|
|
@@ -31,7 +31,10 @@ describe 'MyJohnDeereApi::Model::ContributionDefinition' do
|
|
|
31
31
|
end
|
|
32
32
|
|
|
33
33
|
it 'sets the attributes from the given record' do
|
|
34
|
-
definition = klass.new(record)
|
|
34
|
+
definition = klass.new(client, record)
|
|
35
|
+
|
|
36
|
+
assert_equal client, definition.client
|
|
37
|
+
assert_equal accessor, definition.accessor
|
|
35
38
|
|
|
36
39
|
# basic attributes
|
|
37
40
|
assert_equal record['id'], definition.id
|
|
@@ -39,16 +42,11 @@ describe 'MyJohnDeereApi::Model::ContributionDefinition' do
|
|
|
39
42
|
end
|
|
40
43
|
|
|
41
44
|
it 'links to other things' do
|
|
42
|
-
product = klass.new(record)
|
|
45
|
+
product = klass.new(client, record)
|
|
43
46
|
|
|
44
47
|
['self', 'contribution_product'].each do |association|
|
|
45
48
|
assert_equal link_for(association), product.links[association]
|
|
46
49
|
end
|
|
47
50
|
end
|
|
48
|
-
|
|
49
|
-
it 'accepts an optional client' do
|
|
50
|
-
asset = klass.new(record, client)
|
|
51
|
-
assert_equal client, asset.client
|
|
52
|
-
end
|
|
53
51
|
end
|
|
54
52
|
end
|
|
@@ -38,7 +38,10 @@ describe 'MyJohnDeereApi::Model::ContributionProduct' do
|
|
|
38
38
|
end
|
|
39
39
|
|
|
40
40
|
it 'sets the attributes from the given record' do
|
|
41
|
-
product = klass.new(record)
|
|
41
|
+
product = klass.new(client, record)
|
|
42
|
+
|
|
43
|
+
assert_equal client, product.client
|
|
44
|
+
assert_equal accessor, product.accessor
|
|
42
45
|
|
|
43
46
|
# basic attributes
|
|
44
47
|
assert_equal record['id'], product.id
|
|
@@ -53,22 +56,17 @@ describe 'MyJohnDeereApi::Model::ContributionProduct' do
|
|
|
53
56
|
end
|
|
54
57
|
|
|
55
58
|
it 'links to other things' do
|
|
56
|
-
product = klass.new(record)
|
|
59
|
+
product = klass.new(client, record)
|
|
57
60
|
|
|
58
61
|
['self', 'contribution_definition'].each do |association|
|
|
59
62
|
assert_equal link_for(association), product.links[association]
|
|
60
63
|
end
|
|
61
64
|
end
|
|
62
|
-
|
|
63
|
-
it 'accepts an optional client' do
|
|
64
|
-
asset = klass.new(record, client)
|
|
65
|
-
assert_equal client, asset.client
|
|
66
|
-
end
|
|
67
65
|
end
|
|
68
66
|
|
|
69
67
|
describe '#contribution_definitions' do
|
|
70
68
|
it 'returns a collection of contribution definitions for this contributon product' do
|
|
71
|
-
product = klass.new(
|
|
69
|
+
product = klass.new(client, record)
|
|
72
70
|
|
|
73
71
|
contribution_definitions = VCR.use_cassette('get_contribution_definitions') do
|
|
74
72
|
product.contribution_definitions.all; product.contribution_definitions
|
|
@@ -23,9 +23,10 @@ describe 'MyJohnDeereApi::Model::Field' do
|
|
|
23
23
|
end
|
|
24
24
|
|
|
25
25
|
it 'sets the attributes from the given record' do
|
|
26
|
-
field = klass.new(record)
|
|
26
|
+
field = klass.new(client, record)
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
assert_equal client, field.client
|
|
29
|
+
assert_equal accessor, field.accessor
|
|
29
30
|
|
|
30
31
|
# basic attributes
|
|
31
32
|
assert_equal record['name'], field.name
|
|
@@ -39,11 +40,6 @@ describe 'MyJohnDeereApi::Model::Field' do
|
|
|
39
40
|
assert_equal link_for(association), field.links[association]
|
|
40
41
|
end
|
|
41
42
|
end
|
|
42
|
-
|
|
43
|
-
it 'accepts an optional accessor' do
|
|
44
|
-
field = klass.new(record, client)
|
|
45
|
-
assert_equal client, field.client
|
|
46
|
-
end
|
|
47
43
|
end
|
|
48
44
|
|
|
49
45
|
describe '#flags' do
|
|
@@ -58,19 +54,11 @@ describe 'MyJohnDeereApi::Model::Field' do
|
|
|
58
54
|
assert_kind_of JD::Model::Flag, flag
|
|
59
55
|
end
|
|
60
56
|
end
|
|
61
|
-
|
|
62
|
-
it 'raises an exception if an accessor is not available' do
|
|
63
|
-
field = klass.new(record)
|
|
64
|
-
|
|
65
|
-
exception = assert_raises(JD::AccessTokenError) { field.flags }
|
|
66
|
-
|
|
67
|
-
assert_includes exception.message, 'Access Token must be supplied'
|
|
68
|
-
end
|
|
69
57
|
end
|
|
70
58
|
|
|
71
59
|
describe 'private #organization_id' do
|
|
72
60
|
it "infers the organization_id from links" do
|
|
73
|
-
field = klass.new(record)
|
|
61
|
+
field = klass.new(client, record)
|
|
74
62
|
assert_equal organization_id, field.send(:organization_id)
|
|
75
63
|
end
|
|
76
64
|
end
|
|
@@ -3,7 +3,7 @@ require 'json'
|
|
|
3
3
|
|
|
4
4
|
describe 'MyJohnDeereApi::Model::Flag' do
|
|
5
5
|
let(:klass) { JD::Model::Flag }
|
|
6
|
-
|
|
6
|
+
|
|
7
7
|
let(:record) do
|
|
8
8
|
{
|
|
9
9
|
"@type"=>"Flag",
|
|
@@ -26,27 +26,23 @@ describe 'MyJohnDeereApi::Model::Flag' do
|
|
|
26
26
|
end
|
|
27
27
|
|
|
28
28
|
it 'sets the attributes from the given record' do
|
|
29
|
-
|
|
29
|
+
flag = klass.new(client, record)
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
assert_equal client, flag.client
|
|
32
|
+
assert_equal accessor, flag.accessor
|
|
32
33
|
|
|
33
34
|
# basic attributes
|
|
34
|
-
assert_equal JSON.parse(record['geometry']),
|
|
35
|
-
assert_equal record['archived'],
|
|
36
|
-
assert_equal record['proximityAlertEnabled'],
|
|
37
|
-
assert_equal record['notes'],
|
|
38
|
-
assert_equal record['id'],
|
|
35
|
+
assert_equal JSON.parse(record['geometry']), flag.geometry
|
|
36
|
+
assert_equal record['archived'], flag.archived?
|
|
37
|
+
assert_equal record['proximityAlertEnabled'], flag.proximity_alert_enabled?
|
|
38
|
+
assert_equal record['notes'], flag.notes
|
|
39
|
+
assert_equal record['id'], flag.id
|
|
39
40
|
|
|
40
41
|
# links to other things
|
|
41
|
-
assert_kind_of Hash,
|
|
42
|
-
assert_equal link_for('field'),
|
|
43
|
-
assert_equal link_for('createdBy'),
|
|
44
|
-
assert_equal link_for('lastModifiedBy'),
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
it 'accepts an optional client' do
|
|
48
|
-
field = klass.new(record, client)
|
|
49
|
-
assert_equal client, field.client
|
|
42
|
+
assert_kind_of Hash, flag.links
|
|
43
|
+
assert_equal link_for('field'), flag.links['field']
|
|
44
|
+
assert_equal link_for('createdBy'), flag.links['created_by']
|
|
45
|
+
assert_equal link_for('lastModifiedBy'), flag.links['last_modified_by']
|
|
50
46
|
end
|
|
51
47
|
end
|
|
52
48
|
end
|
|
@@ -36,14 +36,16 @@ describe 'MyJohnDeereApi::Model::Organization' do
|
|
|
36
36
|
end
|
|
37
37
|
|
|
38
38
|
it 'sets the attributes from the given record' do
|
|
39
|
-
organization = klass.new(record)
|
|
39
|
+
organization = klass.new(client, record)
|
|
40
|
+
|
|
41
|
+
assert_equal client, organization.client
|
|
42
|
+
assert_equal accessor, organization.accessor
|
|
40
43
|
|
|
41
44
|
# basic attributes
|
|
42
45
|
assert_equal record['name'], organization.name
|
|
43
46
|
assert_equal record['type'], organization.type
|
|
44
47
|
assert_equal record['member'], organization.member?
|
|
45
48
|
assert_equal record['id'], organization.id
|
|
46
|
-
assert_nil organization.accessor
|
|
47
49
|
|
|
48
50
|
# links to other things
|
|
49
51
|
assert_kind_of Hash, organization.links
|
|
@@ -52,11 +54,6 @@ describe 'MyJohnDeereApi::Model::Organization' do
|
|
|
52
54
|
assert_equal link_for(association), organization.links[association]
|
|
53
55
|
end
|
|
54
56
|
end
|
|
55
|
-
|
|
56
|
-
it 'accepts an optional client' do
|
|
57
|
-
organization = klass.new(record, client)
|
|
58
|
-
assert_equal client, organization.client
|
|
59
|
-
end
|
|
60
57
|
end
|
|
61
58
|
|
|
62
59
|
describe '#fields' do
|
|
@@ -70,14 +67,6 @@ describe 'MyJohnDeereApi::Model::Organization' do
|
|
|
70
67
|
assert_kind_of JD::Model::Field, field
|
|
71
68
|
end
|
|
72
69
|
end
|
|
73
|
-
|
|
74
|
-
it 'raises an exception if an accessor is not available' do
|
|
75
|
-
organization = klass.new(record)
|
|
76
|
-
|
|
77
|
-
exception = assert_raises(JD::AccessTokenError) { organization.fields }
|
|
78
|
-
|
|
79
|
-
assert_includes exception.message, 'Access Token must be supplied'
|
|
80
|
-
end
|
|
81
70
|
end
|
|
82
71
|
|
|
83
72
|
describe '#assets' do
|
|
@@ -91,12 +80,5 @@ describe 'MyJohnDeereApi::Model::Organization' do
|
|
|
91
80
|
assert_kind_of JD::Model::Asset, assets
|
|
92
81
|
end
|
|
93
82
|
end
|
|
94
|
-
|
|
95
|
-
it 'raises an exception if an accessor is not available' do
|
|
96
|
-
organization = klass.new(record)
|
|
97
|
-
|
|
98
|
-
exception = assert_raises(JD::AccessTokenError) { organization.assets }
|
|
99
|
-
assert_includes exception.message, 'Access Token must be supplied'
|
|
100
|
-
end
|
|
101
83
|
end
|
|
102
84
|
end
|
|
@@ -3,7 +3,7 @@ require 'support/helper'
|
|
|
3
3
|
describe 'MyJohnDeereApi::Request::Update::Asset' do
|
|
4
4
|
let(:klass) { JD::Request::Update::Asset }
|
|
5
5
|
let(:object) { klass.new(client, item, attributes) }
|
|
6
|
-
let(:item) { JD::Model::Asset.new(
|
|
6
|
+
let(:item) { JD::Model::Asset.new(client, record) }
|
|
7
7
|
|
|
8
8
|
let(:attributes) do
|
|
9
9
|
{
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: my_john_deere_api
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.2.
|
|
4
|
+
version: 2.2.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jaime Bellmyer
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2020-02-
|
|
12
|
+
date: 2020-02-16 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: vcr
|