lhs 15.4.0 → 15.4.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 +4 -4
- data/lib/lhs/record.rb +1 -1
- data/lib/lhs/version.rb +1 -1
- data/spec/record/to_ary_spec.rb +63 -0
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aae793d07885f60a78b3ba1a00620126cb5abe0e
|
4
|
+
data.tar.gz: 3aae37c869254994499545d59b3059c0baac6038
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
@@ -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.
|
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-
|
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.
|
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
|