g5_foundation_client 0.0.15 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0e7841d2bcd3b4e14c5035c4053362b22edd64c6
4
- data.tar.gz: 0b9be7e3a0bc7ee77c5bdc3fd175b9e3a1d1a72a
3
+ metadata.gz: 89fd81b1c2f7bd2bd6050a7d280e4d9a47a7d695
4
+ data.tar.gz: a35cd6b9c7a5db3a07e48a08e92e8052f6ee2b1d
5
5
  SHA512:
6
- metadata.gz: 16afaabefebb99cbfe77b0acbb94445d2c8d03b59649b2a4de8f11dc0dd3b2d173c684c2dc8bac70643c49116c7904b35053b6748402c56228b3988ee3d6cdc9
7
- data.tar.gz: a4261abb9bb26f64f3871f5842f890a8f74f22c5d53bd46312169c4e0c93831ece4078a80255d8546a9c3a6cb2a9f39fdb3c954c9342fa97755bdd6dd37cf04c
6
+ metadata.gz: 344c19c29daba8ad5ecac811cf364f27ca53f0a60ae28403feef35c262f11d29a9b2531015237871c6c5273b6132134879419d799fc55857a6c711e30ec85a24
7
+ data.tar.gz: 2fe403121d16365fc9a89dc93ed0b31cdff35d4c4071de7bedf3fb8f82f4a2af70e63bc8ba7bf585cb5cf56acfe69ce1639d2e563f2737a67f8812026ef47bf4
@@ -6,6 +6,15 @@ class G5FoundationClient::Client
6
6
  self.client_hash = ActiveSupport::HashWithIndifferentAccess.new attrs.fetch(:client, attrs)
7
7
  end
8
8
 
9
+ class << self
10
+ def all_client_uids(clients_uri)
11
+ G5FoundationClient::Fetcher.fetch_url(clients_uri) do |json|
12
+ hash = ActiveSupport::HashWithIndifferentAccess.new(JSON.parse(json))
13
+ hash[:clients].collect { |client| client[:uid] }
14
+ end
15
+ end
16
+ end
17
+
9
18
  [:id, :uid, :name, :urn, :vertical, :street_address_1, :street_address_2,
10
19
  :city, :state, :postal_code, :fax, :email, :tel, :domain_type, :domain].each do |field|
11
20
  define_method(field) { self.client_hash[field] }
@@ -1,3 +1,3 @@
1
1
  module G5FoundationClient
2
- VERSION = '0.0.15'
2
+ VERSION = '0.1.0'
3
3
  end
@@ -6,12 +6,12 @@ describe G5FoundationClient::Client do
6
6
  describe "instantiating with a hash" do
7
7
  subject do
8
8
  G5FoundationClient::Client.new(
9
- uid: "http://example.com/urn",
10
- urn: "urn",
11
- name: "Test Name",
12
- vertical: "Senior",
13
- domain: "example.com",
14
- domain_type: "MultiDomainClient"
9
+ uid: "http://example.com/urn",
10
+ urn: "urn",
11
+ name: "Test Name",
12
+ vertical: "Senior",
13
+ domain: "example.com",
14
+ domain_type: "MultiDomainClient"
15
15
  )
16
16
  end
17
17
 
@@ -29,11 +29,11 @@ describe G5FoundationClient::Client do
29
29
  context "when the nested parameters are correct" do
30
30
  let(:attributes) do
31
31
  {
32
- name: "Client Name",
33
- locations: [
34
- { name: "Location 1" },
35
- { name: "Location 2" }
36
- ]
32
+ name: "Client Name",
33
+ locations: [
34
+ {name: "Location 1"},
35
+ {name: "Location 2"}
36
+ ]
37
37
  }
38
38
  end
39
39
 
@@ -42,11 +42,24 @@ describe G5FoundationClient::Client do
42
42
  it "instantiates associated Locations" do
43
43
  expect(client.locations.length).to eq(2)
44
44
  expect(client.locations.all? { |l| l.is_a?(G5FoundationClient::Location) }).to be_true
45
- expect(client.locations.map(&:name)).to eq([ 'Location 1', 'Location 2'])
45
+ expect(client.locations.map(&:name)).to eq(['Location 1', 'Location 2'])
46
46
  end
47
47
  end
48
48
  end
49
49
 
50
+ describe :all_client_uids do
51
+ let(:clients_url) { 'http://the-hub-clients-url' }
52
+ let(:response) { fixture('hub-clients.json') }
53
+ before { stub_json(clients_url + '?access_token=token', response) }
54
+ subject(:all_client_uids) { G5FoundationClient::Client.all_client_uids(clients_url) }
55
+ let(:expected) do
56
+ %w(http://hub.g5dxm.com/clients/g5-c-1sshwrc5-chateau-retirement-communities-llc http://hub.g5dxm.com/clients/g5-c-1skckws2-case-and-associates-properties-inc http://hub.g5dxm.com/clients/g5-c-1sjhz1kl-holland-residential http://hub.g5dxm.com/clients/g5-c-1szcnbet-berkshire-communities http://hub.g5dxm.com/clients/g5-c-1soj8z7v-g5-selfstorage http://hub.g5dxm.com/clients/g5-c-1suhzvye-demo-client-senior-living http://hub.g5dxm.com/clients/g5-c-1t08o5vy-default-yaml-test http://hub.g5dxm.com/clients/g5-c-1szs3551-passco-companies-llc http://hub.g5dxm.com/clients/g5-c-1sze0wlk-legacy-ptla http://hub.g5dxm.com/clients/g5-c-1szn2ho0-spinup-test-4 http://hub.g5dxm.com/clients/g5-c-1stn8mua-blue-ridge-companies http://hub.g5dxm.com/clients/g5-c-1soj8m6e-g5-multifamily http://hub.g5dxm.com/clients/g5-c-1szcsfqz-animal-farm http://hub.g5dxm.com/clients/g5-c-6d4gqkl-demo http://hub.g5dxm.com/clients/g5-c-1skmeepf-clowns-monkeys-jokers http://hub.g5dxm.com/clients/g5-c-1slhp2tc-compass-rock-real-estate http://hub.g5dxm.com/clients/g5-c-1svnc06g-deploy-test http://hub.g5dxm.com/clients/g5-c-1sve69nj-brian-url-test http://hub.g5dxm.com/clients/g5-c-1su8sbx5-brian-reader-test http://hub.g5dxm.com/clients/g5-c-1su76sgw-brian-test-cms http://hub.g5dxm.com/clients/g5-c-1strrmif-cke-properties http://hub.g5dxm.com/clients/g5-c-1sojmghc-g5-multifamily2 http://hub.g5dxm.com/clients/g5-c-1so8p6u9-mj-storage http://hub.g5dxm.com/clients/g5-c-1sbdk8wp-bb-self-storage http://hub.g5dxm.com/clients/g5-c-1sf7t8z8-jls-single-domain-client http://hub.g5dxm.com/clients/g5-c-1servrzr-luxe-apartment-company http://hub.g5dxm.com/clients/g5-c-6d4u4sc-madrona http://hub.g5dxm.com/clients/g5-c-1sbmayxa-bb-properties http://hub.g5dxm.com/clients/g5-c-1s9v57wo-jls-inc http://hub.g5dxm.com/clients/g5-c-1s3t3hh2-omni-consumer-products)
57
+ end
58
+ it 'returns client_uids' do
59
+ expect(subject.sort).to eq(expected.sort)
60
+ end
61
+ end
62
+
50
63
  describe ".find_by_uid" do
51
64
  let(:uid) { 'http://example.com/clients/g5-c-1234-client' }
52
65
  let(:response) { fixture('hub-client.json') }
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.0.15
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Don Petersen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-31 00:00:00.000000000 Z
11
+ date: 2014-11-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport