active_remote 6.0.1 → 6.0.2

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
  SHA256:
3
- metadata.gz: dbbf0e9f3344ff1bf1586da95f3a70f2a49afcc6f81ff0642ca1c0120d784d8f
4
- data.tar.gz: cadeba3f0cf87bb7f72e45ba5dc51395aee9fe2750cd1dea62a50fbb435a9e29
3
+ metadata.gz: 46c9fb95187b46b58aae5a925802ef9fc9e3927df10fd3e7dd1c7dfcbfd61346
4
+ data.tar.gz: 588d8de6ebb1375e1a564f262c1e7fb7c4c9379912bee53d65f78ed8f981c981
5
5
  SHA512:
6
- metadata.gz: 63e8d681b8eafedf7a6633485beead588b640b53b9abbb75930a05b22a946455454cafc76efaa321c8cac7664b79bbd60ae00cd03e16fed34055663d1276659e
7
- data.tar.gz: 8a31157b31ff4ca98c9636211f843df3052ae8f84f716a4d4da7007a7f13a5baf2ae2cb4ac0732ed1d77f3a72fc28a63acb4961d5ad144cf55af92fa270d8ff3
6
+ metadata.gz: 2fb6dfbbe56e7346a195f2bc9c1aa7035d53ac223a6c6f79c8dfad2d6cb4b56ca6a551adde1ebd1ef1752848eb0ecfca44394bb7334c98e59e6b64336e2b9520
7
+ data.tar.gz: fe2162a2f523aa54290ebd881b1979a4cf75443b1219652870b8cb2d6494b02e217d329d85d3960585f826cb34fe4e9a367b425c911c0132910aa3c7274507ca
@@ -84,7 +84,7 @@ module ActiveRemote
84
84
  end
85
85
 
86
86
  options[:has_many] = true
87
- create_setter_method(has_many_class, options)
87
+ create_association_writer(has_many_class, options)
88
88
  end
89
89
 
90
90
  # Create a `has_one` association for a given remote resource.
@@ -133,12 +133,11 @@ module ActiveRemote
133
133
 
134
134
  private
135
135
 
136
- def create_setter_method(associated_klass, options = {})
137
- writer_method = "#{associated_klass}=".to_sym
138
- define_method(writer_method) do |new_value|
136
+ def create_association_writer(associated_klass, options = {})
137
+ define_method("#{associated_klass}=") do |new_value|
139
138
  raise "New value must be an array" if options[:has_many] == true && new_value.class != Array
140
139
 
141
- instance_variable_set(:"@#{new_value.class.name.demodulize.underscore}", new_value)
140
+ instance_variable_set(:"@#{associated_klass}", new_value)
142
141
  new_value
143
142
  end
144
143
  end
@@ -160,7 +159,7 @@ module ActiveRemote
160
159
  return value
161
160
  end
162
161
 
163
- create_setter_method(associated_klass, options)
162
+ create_association_writer(associated_klass, options)
164
163
  end
165
164
  end
166
165
  end
@@ -1,3 +1,3 @@
1
1
  module ActiveRemote
2
- VERSION = "6.0.1"
2
+ VERSION = "6.0.2"
3
3
  end
@@ -76,8 +76,10 @@ describe ActiveRemote::Association do
76
76
  expect(subject.coauthor).to eq record
77
77
  end
78
78
 
79
- it "should create a setter method" do
80
- expect(subject).to respond_to(:coauthor=)
79
+ it "creates a setter method" do
80
+ author = Author.new(:guid => author_guid)
81
+ subject.coauthor = author
82
+ expect(subject.coauthor).to eq(author)
81
83
  end
82
84
  end
83
85
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_remote
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.1
4
+ version: 6.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Hutchison
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-11 00:00:00.000000000 Z
11
+ date: 2022-06-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -279,7 +279,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
279
279
  - !ruby/object:Gem::Version
280
280
  version: '0'
281
281
  requirements: []
282
- rubygems_version: 3.3.6
282
+ rubygems_version: 3.3.15
283
283
  signing_key:
284
284
  specification_version: 4
285
285
  summary: Active Record for your platform