g5_foundation_client 0.5.0.pre1 → 0.5.0.pre2
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/g5_foundation_client/models/group.rb +13 -0
- data/lib/g5_foundation_client/models/location.rb +14 -1
- data/lib/g5_foundation_client/version.rb +1 -1
- data/lib/g5_foundation_client.rb +1 -1
- data/spec/fixtures/hub-client.json +21 -1
- data/spec/fixtures/hub-location.json +21 -1
- data/spec/lib/g5_foundation_client/models/group_spec.rb +31 -0
- data/spec/lib/g5_foundation_client/models/location_spec.rb +33 -8
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 807c8851692cd74f6c66128a7c31d077d09a564f
|
4
|
+
data.tar.gz: 22f8e6564cb638daea527810c61dde2b6f800685
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 325dd6d2becae939cdb339cf9eba356d23bbfe01aa258ab43d45454ecada7b03dd47a835ef91f53fc47e5923726a0ce0541af7fc8ff1841318540b8ac0c995ae
|
7
|
+
data.tar.gz: fa0b1064c38c59263b8d1b4e5076f431770995ba8f5957a853f3e66ed863c7798cbd46c0cafb3790149cde765afc8ddcb1192b441b932b44b36d8c402abf1906
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module G5FoundationClient
|
2
|
+
class Group
|
3
|
+
attr_reader :attributes
|
4
|
+
|
5
|
+
def initialize(attrs)
|
6
|
+
@attributes = ActiveSupport::HashWithIndifferentAccess.new(attrs)
|
7
|
+
end
|
8
|
+
|
9
|
+
[:id, :name, :description, :urn, :core_group_id, :created_at, :updated_at].each do |field|
|
10
|
+
define_method(field) { self.attributes[field] }
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -46,7 +46,20 @@ class G5FoundationClient::Location
|
|
46
46
|
"#{street_address_1}\n#{street_address_2}"
|
47
47
|
end
|
48
48
|
|
49
|
+
def groups
|
50
|
+
build('groups')
|
51
|
+
end
|
52
|
+
|
49
53
|
def amenities
|
50
|
-
|
54
|
+
build('amenities')
|
55
|
+
end
|
56
|
+
|
57
|
+
private
|
58
|
+
|
59
|
+
def build(attributes)
|
60
|
+
self.location_hash.fetch(attributes.to_sym, []).map do |hash|
|
61
|
+
klass = "::G5FoundationClient::#{attributes.singularize.capitalize}"
|
62
|
+
klass.constantize.new(hash)
|
63
|
+
end
|
51
64
|
end
|
52
65
|
end
|
data/lib/g5_foundation_client.rb
CHANGED
@@ -180,8 +180,28 @@
|
|
180
180
|
"created_at": "2016-11-22T09:20:16.578-08:00",
|
181
181
|
"updated_at": "2016-11-22T09:20:16.578-08:00"
|
182
182
|
}
|
183
|
+
],
|
184
|
+
"groups": [
|
185
|
+
{
|
186
|
+
"id": 13,
|
187
|
+
"name": "san_diego_east_region",
|
188
|
+
"description": "East San Diego County",
|
189
|
+
"urn": "g5-g-1w28z0k5-san_diego_east_region",
|
190
|
+
"core_group_id": 13,
|
191
|
+
"created_at": "2016-12-12T11:46:58.140-08:00",
|
192
|
+
"updated_at": "2016-12-12T11:46:58.140-08:00"
|
193
|
+
},
|
194
|
+
{
|
195
|
+
"id": 549,
|
196
|
+
"name": "san_diego",
|
197
|
+
"description": "San Diego",
|
198
|
+
"urn": "g5-g-iwmhw5yt-san_diego",
|
199
|
+
"core_group_id": 550,
|
200
|
+
"created_at": "2016-12-12T11:51:38.205-08:00",
|
201
|
+
"updated_at": "2016-12-12T11:51:38.205-08:00"
|
202
|
+
}
|
183
203
|
]
|
184
204
|
}
|
185
205
|
]
|
186
206
|
}
|
187
|
-
}
|
207
|
+
}
|
@@ -161,6 +161,26 @@
|
|
161
161
|
"created_at": "2016-11-22T09:20:16.578-08:00",
|
162
162
|
"updated_at": "2016-11-22T09:20:16.578-08:00"
|
163
163
|
}
|
164
|
+
],
|
165
|
+
"groups": [
|
166
|
+
{
|
167
|
+
"id": 13,
|
168
|
+
"name": "san_diego_east_region",
|
169
|
+
"description": "East San Diego County",
|
170
|
+
"urn": "g5-g-1w28z0k5-san_diego_east_region",
|
171
|
+
"core_group_id": 13,
|
172
|
+
"created_at": "2016-12-12T11:46:58.140-08:00",
|
173
|
+
"updated_at": "2016-12-12T11:46:58.140-08:00"
|
174
|
+
},
|
175
|
+
{
|
176
|
+
"id": 549,
|
177
|
+
"name": "san_diego",
|
178
|
+
"description": "San Diego",
|
179
|
+
"urn": "g5-g-iwmhw5yt-san_diego",
|
180
|
+
"core_group_id": 550,
|
181
|
+
"created_at": "2016-12-12T11:51:38.205-08:00",
|
182
|
+
"updated_at": "2016-12-12T11:51:38.205-08:00"
|
183
|
+
}
|
164
184
|
]
|
165
185
|
}
|
166
|
-
}
|
186
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe G5FoundationClient::Group do
|
4
|
+
let(:id) { 1 }
|
5
|
+
let(:name) { 'San Diego' }
|
6
|
+
let(:description) { 'San Diego group' }
|
7
|
+
let(:urn) { 'g5-g-san-diego' }
|
8
|
+
let(:core_group_id) { 2 }
|
9
|
+
let(:created_at) { '2016-11-22T09:20:16.549-08:00' }
|
10
|
+
let(:updated_at) { '2016-11-22T09:20:16.549-08:00' }
|
11
|
+
|
12
|
+
subject do
|
13
|
+
described_class.new({
|
14
|
+
id: id,
|
15
|
+
name: name,
|
16
|
+
description: description,
|
17
|
+
urn: urn,
|
18
|
+
core_group_id: core_group_id,
|
19
|
+
created_at: created_at,
|
20
|
+
updated_at: updated_at
|
21
|
+
})
|
22
|
+
end
|
23
|
+
|
24
|
+
its(:id) { is_expected.to eq(id) }
|
25
|
+
its(:name) { is_expected.to eq(name) }
|
26
|
+
its(:description) { is_expected.to eq(description) }
|
27
|
+
its(:urn) { is_expected.to eq(urn) }
|
28
|
+
its(:core_group_id) { is_expected.to eq(core_group_id) }
|
29
|
+
its(:created_at) { is_expected.to eq(created_at) }
|
30
|
+
its(:updated_at) { is_expected.to eq(updated_at) }
|
31
|
+
end
|
@@ -28,20 +28,41 @@ describe G5FoundationClient::Location do
|
|
28
28
|
postal_code: "31337",
|
29
29
|
status: "Pending",
|
30
30
|
client: client,
|
31
|
-
amenities: [
|
32
|
-
|
31
|
+
amenities: [
|
32
|
+
{
|
33
|
+
id: 1,
|
33
34
|
name: "Covered Parking",
|
34
35
|
icon: "fa fa-parking-interior",
|
35
36
|
created_at: "2016-11-22T09:20:16.549-08:00",
|
36
37
|
updated_at: "2016-11-22T09:20:16.549-08:00"
|
38
|
+
},
|
39
|
+
{
|
40
|
+
id: 3,
|
41
|
+
name: "WIFI",
|
42
|
+
icon: "fa fa-wifi",
|
43
|
+
created_at: "2016-11-22T09:20:16.578-08:00",
|
44
|
+
updated_at: "2016-11-22T09:20:16.578-08:00"
|
45
|
+
}
|
46
|
+
],
|
47
|
+
groups: [
|
48
|
+
{
|
49
|
+
id: 13,
|
50
|
+
name: "san_diego_east_region",
|
51
|
+
description: "East San Diego County",
|
52
|
+
urn: "g5-g-1w28z0k5-san_diego_east_region",
|
53
|
+
core_group_id: 13,
|
54
|
+
created_at: "2016-12-12T11:46:58.140-08:00",
|
55
|
+
updated_at: "2016-12-12T11:46:58.140-08:00"
|
37
56
|
},
|
38
57
|
{
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
58
|
+
id: 549,
|
59
|
+
name: "san_diego",
|
60
|
+
description: "San Diego",
|
61
|
+
urn: "g5-g-iwmhw5yt-san_diego",
|
62
|
+
core_group_id: 550,
|
63
|
+
created_at: "2016-12-12T11:51:38.205-08:00",
|
64
|
+
updated_at: "2016-12-12T11:51:38.205-08:00"
|
65
|
+
}
|
45
66
|
]
|
46
67
|
)
|
47
68
|
end
|
@@ -73,6 +94,10 @@ describe G5FoundationClient::Location do
|
|
73
94
|
it 'builds amenities' do
|
74
95
|
expect(subject.amenities.collect(&:name)).to eq(['Covered Parking', 'WIFI'])
|
75
96
|
end
|
97
|
+
|
98
|
+
it 'builds groups' do
|
99
|
+
expect(subject.groups.collect(&:id)).to eq([13, 549])
|
100
|
+
end
|
76
101
|
end
|
77
102
|
|
78
103
|
describe '.find_by_uid' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: g5_foundation_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.0.
|
4
|
+
version: 0.5.0.pre2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Don Petersen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-12-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -158,6 +158,7 @@ files:
|
|
158
158
|
- lib/g5_foundation_client/models/amenity.rb
|
159
159
|
- lib/g5_foundation_client/models/client.rb
|
160
160
|
- lib/g5_foundation_client/models/findable_by_uid.rb
|
161
|
+
- lib/g5_foundation_client/models/group.rb
|
161
162
|
- lib/g5_foundation_client/models/location.rb
|
162
163
|
- lib/g5_foundation_client/record_not_found_exception.rb
|
163
164
|
- lib/g5_foundation_client/rspec.rb
|
@@ -169,6 +170,7 @@ files:
|
|
169
170
|
- spec/lib/g5_foundation_client/fetcher_spec.rb
|
170
171
|
- spec/lib/g5_foundation_client/models/amenity_spec.rb
|
171
172
|
- spec/lib/g5_foundation_client/models/client_spec.rb
|
173
|
+
- spec/lib/g5_foundation_client/models/group_spec.rb
|
172
174
|
- spec/lib/g5_foundation_client/models/location_spec.rb
|
173
175
|
- spec/lib/g5_foundation_client_spec.rb
|
174
176
|
- spec/spec_helper.rb
|
@@ -203,6 +205,8 @@ test_files:
|
|
203
205
|
- spec/lib/g5_foundation_client/fetcher_spec.rb
|
204
206
|
- spec/lib/g5_foundation_client/models/amenity_spec.rb
|
205
207
|
- spec/lib/g5_foundation_client/models/client_spec.rb
|
208
|
+
- spec/lib/g5_foundation_client/models/group_spec.rb
|
206
209
|
- spec/lib/g5_foundation_client/models/location_spec.rb
|
207
210
|
- spec/lib/g5_foundation_client_spec.rb
|
208
211
|
- spec/spec_helper.rb
|
212
|
+
has_rdoc:
|