lhs 15.4.0 → 15.4.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: ae5e5ef2a45b0f63f18f0c37081cbce3a0834c09
4
- data.tar.gz: 02cc862febe0af3c26077abb6ae1c748e872480b
3
+ metadata.gz: aae793d07885f60a78b3ba1a00620126cb5abe0e
4
+ data.tar.gz: 3aae37c869254994499545d59b3059c0baac6038
5
5
  SHA512:
6
- metadata.gz: aa2d6b4e45f4082f78a1a1c6d8290571866216d5b8c9ac7fc480578044eea7fb15989d2bafd11c52a104f39c909957ac2169f39b0f96ca4fab47977dfbbc0e9e
7
- data.tar.gz: 821d13c8b9bb5d10f073c885eaba26580e712c287ee1ec22b538f075aff1f175db7300ed082be1d370a124d2d82789945f0d5b3f97a39fedfce5bfa508c4ef7f
6
+ metadata.gz: b32efb89e71c58078da3c14a9e86ed094ead7a7553241944a7110ba62a9aaf24a18b248e9a511bca437464186f554689c211205c7aea97d6bc17318914192208
7
+ data.tar.gz: 24b40b24d88d3047760687ec664430588c9abe84e70aa7268852ff51c99e917a95023a20b4958615f0a006551d98b8f1683b14d7f8cacafa1275090ae6264204
data/lib/lhs/record.rb CHANGED
@@ -58,7 +58,7 @@ class LHS::Record
58
58
  include RequestCycleCache
59
59
  include Scope
60
60
 
61
- delegate :_proxy, :_endpoint, :merge_raw!, :select, :becomes, to: :_data
61
+ delegate :_proxy, :_endpoint, :merge_raw!, :select, :becomes, :respond_to?, to: :_data
62
62
 
63
63
  def initialize(data = nil, apply_customer_setters = true)
64
64
  data ||= LHS::Data.new({}, nil, self.class)
data/lib/lhs/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module LHS
2
- VERSION = '15.4.0'
2
+ VERSION = '15.4.1'
3
3
  end
@@ -0,0 +1,63 @@
1
+ require 'rails_helper'
2
+
3
+ describe LHS::Record do
4
+ let(:user_item) do
5
+ {
6
+ email: 'someone@somewhe.re'
7
+ }
8
+ end
9
+
10
+ let(:item) do
11
+ {
12
+ href: 'http://datastore/records/1',
13
+ user: user_item
14
+ }
15
+ end
16
+
17
+ let(:record) { Record.find(1) }
18
+
19
+ before do
20
+ class User < LHS::Record
21
+ end
22
+
23
+ class Record < LHS::Record
24
+ endpoint 'http://datastore/records/{id}'
25
+
26
+ has_one :user, class_name: 'User'
27
+ end
28
+
29
+ stub_request(:get, 'http://datastore/records/1')
30
+ .to_return(body: item.to_json)
31
+ end
32
+
33
+ describe 'respond_to?(:to_ary)' do
34
+ context 'when creating item' do
35
+ let(:record) do
36
+ Record.new(user: User.new)
37
+ end
38
+
39
+ it 'does not respond to to_ary' do
40
+ expect(record.user.respond_to?(:to_ary)).to eq false
41
+ end
42
+ end
43
+
44
+ context 'when returning a single item' do
45
+ it 'does not respond to to_ary' do
46
+ expect(record.user.respond_to?(:to_ary)).to eq false
47
+ end
48
+ end
49
+
50
+ context 'when returning array of items' do
51
+ let(:user_item) do
52
+ [
53
+ { email: 'someone@somewhe.re' },
54
+ { email: 'someone.else@somewhe.re' }
55
+ ]
56
+ end
57
+
58
+ it 'responds to to_ary' do
59
+ expect(record.user.respond_to?(:to_ary)).to eq true
60
+ end
61
+ end
62
+ end
63
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lhs
3
3
  version: !ruby/object:Gem::Version
4
- version: 15.4.0
4
+ version: 15.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - https://github.com/local-ch/lhs/graphs/contributors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-15 00:00:00.000000000 Z
11
+ date: 2018-06-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -418,6 +418,7 @@ files:
418
418
  - spec/record/save_spec.rb
419
419
  - spec/record/scope_chains_spec.rb
420
420
  - spec/record/select_spec.rb
421
+ - spec/record/to_ary_spec.rb
421
422
  - spec/record/to_hash_spec.rb
422
423
  - spec/record/to_json_spec.rb
423
424
  - spec/record/where_chains_spec.rb
@@ -454,7 +455,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
454
455
  requirements:
455
456
  - Ruby >= 2.3.0
456
457
  rubyforge_project:
457
- rubygems_version: 2.6.12
458
+ rubygems_version: 2.6.14
458
459
  signing_key:
459
460
  specification_version: 4
460
461
  summary: Rails gem providing an easy, active-record-like interface for http json services
@@ -609,6 +610,7 @@ test_files:
609
610
  - spec/record/save_spec.rb
610
611
  - spec/record/scope_chains_spec.rb
611
612
  - spec/record/select_spec.rb
613
+ - spec/record/to_ary_spec.rb
612
614
  - spec/record/to_hash_spec.rb
613
615
  - spec/record/to_json_spec.rb
614
616
  - spec/record/where_chains_spec.rb