update_request 0.0.2 → 0.0.3
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/app/models/update_request/request.rb +13 -6
- data/lib/update_request/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 21b0c2ca1cafaf9cfe2e98bfe124ba7becee7883
|
4
|
+
data.tar.gz: 6a3e1b2f64e75f504c9736313406e9b80c19b709
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f2a4f6f33ed114a42daa6bfc1d518ed2d8f26f5ba0633fe6613062e59395f142b6fa514306aa679e2a58d84751b5cb78af987d797bfb738c0a39cdc0c7049033
|
7
|
+
data.tar.gz: d048b33f264a893c6c280e849a501a3a9672dcb9cf759e0618db9fa05667bbedb5c5fa487bae4508153300bd164a0caf2e855835f03330495424dcfb2f67ff0d
|
@@ -137,18 +137,25 @@ class UpdateRequest::Request < ActiveRecord::Base
|
|
137
137
|
if reference_chain.length > 0
|
138
138
|
sub_schema = schema[next_step]
|
139
139
|
|
140
|
-
if
|
141
|
-
|
142
|
-
insert_at_reference_chain_end(sub_schema, reference_chain, payload)
|
140
|
+
# Try using the stringified key if the integer fails (useful in the case
|
141
|
+
# of nested attributes arrays that use stringified integers as keys)
|
143
142
|
|
144
|
-
|
145
|
-
|
143
|
+
unless sub_schema
|
144
|
+
next_step = next_step.to_s
|
145
|
+
sub_schema = schema[next_step]
|
146
|
+
end
|
147
|
+
|
148
|
+
unless sub_schema
|
146
149
|
raise ArgumentError.new(
|
147
|
-
"File reference '#{
|
150
|
+
"File reference '#{next_step}' points to attribute not present in update schema '#{schema}'"
|
148
151
|
)
|
149
152
|
|
150
153
|
end
|
151
154
|
|
155
|
+
sub_schema_with_payload =
|
156
|
+
insert_at_reference_chain_end(sub_schema, reference_chain, payload)
|
157
|
+
|
158
|
+
schema.dup.tap{|schema_clone| schema_clone[next_step] = sub_schema_with_payload }
|
152
159
|
else
|
153
160
|
schema.dup.tap{|schema_clone| schema_clone[next_step] = payload }
|
154
161
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: update_request
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aleck Greenham
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-02-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|