get 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
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