dynamic_attribute_declaration 0.1.0 → 0.1.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/dynamic_attribute_declaration.rb +9 -1
- data/lib/dynamic_attribute_declaration/version.rb +1 -1
- data/spec/lib/base_spec.rb +22 -5
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 823bbe01675f8328ed7d7cba95a42611ba505a2b
|
4
|
+
data.tar.gz: f685a0d12105f87c69d03a7353e198ff56a96fa8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3800c7f6ab5c0815dc931f2733813936743b664318f5b57e3967f3346d07d272199b2c152964a67d2adacc2281b8c5b8c2927183a8442bc76879215e28b53527
|
7
|
+
data.tar.gz: e0abe7bd669032fbdfa3824b75277720ada4726885c68649fe881d4aedc475f9e20c86d6264c09dcbdfec9909651679f9b09a938c815ce7ef48871c7e08a846f
|
@@ -11,7 +11,15 @@ module DynamicAttributeDeclaration
|
|
11
11
|
end
|
12
12
|
|
13
13
|
def values_for attr_name
|
14
|
-
|
14
|
+
if _dynamic_attrs.key?(attr_name)
|
15
|
+
rtn = nil
|
16
|
+
_dynamic_attrs[attr_name].each do |attr|
|
17
|
+
if attr.key?(:values)
|
18
|
+
rtn = attr[:values]
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
rtn
|
15
23
|
end
|
16
24
|
|
17
25
|
module ClassMethods
|
data/spec/lib/base_spec.rb
CHANGED
@@ -262,16 +262,33 @@ describe "BASE TESTS" do
|
|
262
262
|
end
|
263
263
|
|
264
264
|
describe "values_for" do
|
265
|
-
|
265
|
+
before do
|
266
|
+
cls.clear_dynamic_attrs!
|
267
|
+
cls.define_attrs [
|
268
|
+
{
|
269
|
+
name:
|
270
|
+
{
|
271
|
+
values: {
|
272
|
+
"Lumia 920" => :lumia_920,
|
273
|
+
"Lumia 930" => :lumia_930
|
274
|
+
}
|
275
|
+
}
|
276
|
+
}
|
277
|
+
]
|
278
|
+
end
|
279
|
+
|
280
|
+
it "Should return values for selected attribute" do
|
281
|
+
instance = cls.new
|
282
|
+
values = instance.values_for(:name)
|
283
|
+
expect(values).not_to eq nil
|
284
|
+
end
|
285
|
+
|
286
|
+
pending "Handle case where values is defined multiple times"
|
266
287
|
end
|
267
288
|
end
|
268
289
|
end
|
269
290
|
|
270
291
|
describe "Defining define_attr_state_if" do
|
271
|
-
before do
|
272
|
-
cls.clear_dynamic_attrs!
|
273
|
-
end
|
274
|
-
|
275
292
|
it "Should have no _dynamic_attr_state_if as standard" do
|
276
293
|
expect(cls._dynamic_attr_state_if).to be_nil
|
277
294
|
end
|