get 0.1.0 → 0.1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 585aedf15abe17bcbfca617a1eee4f249ac8822b
4
- data.tar.gz: 29146be9ca581eb442991aaa34f78d4310c113d0
3
+ metadata.gz: 72a5cf438260155ae5777b2a613df35c2c7fd068
4
+ data.tar.gz: a9c8b2a713986b1010dd7f53b3cfebe1c4f9ef14
5
5
  SHA512:
6
- metadata.gz: 61e0565290f33c8cf0a74115cb1c541d7c466376494df93c3f727edb3256001064afc2e761b4fc8aad4a3b7e05bf3163e826583d95a6245b64c127abe85c3f17
7
- data.tar.gz: a3a1b97257304d0531e9b6f299ef59f6ed737b8099341c595b30e832d9b186007902030c00e1c9edb1948a9fffcafcf8ef9700b254e332596dd86c76431c7134
6
+ metadata.gz: f0c61274b14992d1c6e48a0e2b915a0272039fe682c8ac2ae9fbd3eba0a6c7741150009235c86f6c562de5db86ebaac245e4a63e22963ed37ef0f215bf8089ad
7
+ data.tar.gz: fce490f41d4edbde6d4ac39a8ae140faf20718008e92c480803410fc88d738bd294ca0ba99830122585e9f895e04cb433e37cfcd3c9eb6dd25c2c789a2f32e5c
@@ -5,6 +5,7 @@ module Get
5
5
  end
6
6
 
7
7
  def build(adapter_result)
8
+ raise ::Get::Errors::RecordNotFound.new unless adapter_result.context
8
9
  klass.new(db_result(adapter_result))
9
10
  end
10
11
 
data/lib/get/errors.rb CHANGED
@@ -8,5 +8,8 @@ module Get
8
8
 
9
9
  class InvalidAncestry < StandardError
10
10
  end
11
+
12
+ class RecordNotFound < StandardError
13
+ end
11
14
  end
12
15
  end
data/lib/get.rb CHANGED
@@ -19,6 +19,7 @@ module Get
19
19
 
20
20
  ASK_CLASS_REGEX = /^(.*)(By|From)(.*)/
21
21
 
22
+
22
23
  class << self
23
24
  attr_writer :configuration
24
25
 
@@ -36,7 +37,7 @@ module Get
36
37
 
37
38
  def run
38
39
  run!
39
- rescue ::Get::Errors::Base
40
+ rescue ::Get::Errors::Base, Get::Errors::RecordNotFound
40
41
  end
41
42
 
42
43
  def run!
data/spec/get_spec.rb CHANGED
@@ -160,6 +160,15 @@ describe Get do
160
160
  end
161
161
  end
162
162
  end
163
+
164
+ context 'ancestry' do
165
+ context 'valid ancestry with no saved parent' do
166
+ let(:user2) { GetSpec::User.create }
167
+ it 'returns nil' do
168
+ expect { Get::EmployerFromUser.run!(user2) }.to raise_error Get::Errors::RecordNotFound
169
+ end
170
+ end
171
+ end
163
172
  end
164
173
 
165
174
  context '#run' do
@@ -263,6 +272,20 @@ describe Get do
263
272
  expect { Get::UserFromEmployer.run(employer) }.to raise_error Get::Errors::InvalidAncestry
264
273
  end
265
274
  end
275
+
276
+ context 'valid ancestry with no saved childred' do
277
+ let(:employer2) { GetSpec::Employer.create }
278
+ it 'returns empty collection error' do
279
+ expect(Get::UsersFromEmployer.run(employer2).empty?).to be true
280
+ end
281
+ end
282
+
283
+ context 'valid ancestry with no saved parent' do
284
+ let(:user2) { GetSpec::User.create }
285
+ it 'returns nil' do
286
+ expect(Get::EmployerFromUser.run(user2)).to be nil
287
+ end
288
+ end
266
289
  end
267
290
 
268
291
  context 'using via' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: get
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Blake Turner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-18 00:00:00.000000000 Z
11
+ date: 2015-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: hashie