varia_model 0.5.0 → 0.6.0
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/.travis.yml +14 -6
- data/lib/varia_model.rb +2 -2
- data/lib/varia_model/version.rb +1 -1
- data/spec/unit/varia_model_spec.rb +4 -4
- data/varia_model.gemspec +2 -2
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6feadb1e452c52a403f2774d33c411b0c2d9b2bb
|
4
|
+
data.tar.gz: bc8c788dd23e161a3d85e094cc8825cbef01aadb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1f2d49cb2a1622dcd5ea9e20cd32666c335333fcad4f927ee34f467f3716bbc6d7aa7514a46743d54ebd109e4316b5dd010d28f349482e9330984d8ab2f13d50
|
7
|
+
data.tar.gz: 389ec8b797a1175c8f07ce5e005ed7289cbd6d652c90d4255820bd45c4a0907a46c734f680ccb8913fdefa7c6d3c8d7d9b004105d8cdd48691b6f32b25aecf5c
|
data/.travis.yml
CHANGED
@@ -1,8 +1,16 @@
|
|
1
1
|
language: ruby
|
2
|
-
|
3
|
-
-
|
4
|
-
|
5
|
-
|
2
|
+
cache:
|
3
|
+
- bundler
|
4
|
+
dist: trusty
|
5
|
+
branches:
|
6
|
+
only:
|
7
|
+
- master
|
8
|
+
before_install:
|
9
|
+
- gem update --system
|
10
|
+
- gem install bundler
|
6
11
|
script: "bundle exec thor spec"
|
7
|
-
|
8
|
-
|
12
|
+
matrix:
|
13
|
+
include:
|
14
|
+
- rvm: 2.2.5
|
15
|
+
- rvm: 2.3.1
|
16
|
+
- rvm: ruby-head
|
data/lib/varia_model.rb
CHANGED
@@ -214,7 +214,7 @@ module VariaModel
|
|
214
214
|
#
|
215
215
|
# @return [Object]
|
216
216
|
def get_attribute(key)
|
217
|
-
eval_as_proc(_attributes_.
|
217
|
+
eval_as_proc(_attributes_.berks_dig(key.to_s))
|
218
218
|
end
|
219
219
|
alias_method :[], :get_attribute
|
220
220
|
|
@@ -294,7 +294,7 @@ module VariaModel
|
|
294
294
|
|
295
295
|
def whitelist_assign(new_attrs = {})
|
296
296
|
self.class.attributes.dotted_paths.each do |dotted_path|
|
297
|
-
value = new_attrs.
|
297
|
+
value = new_attrs.berks_dig(dotted_path)
|
298
298
|
next if value.nil?
|
299
299
|
|
300
300
|
set_attribute(dotted_path, value)
|
data/lib/varia_model/version.rb
CHANGED
@@ -41,25 +41,25 @@ describe VariaModel do
|
|
41
41
|
it "sets a default value if :default option is provided" do
|
42
42
|
subject.attribute 'brooke.winsor', default: 'rhode island'
|
43
43
|
|
44
|
-
expect(subject.attributes.
|
44
|
+
expect(subject.attributes.berks_dig('brooke.winsor')).to eql('rhode island')
|
45
45
|
end
|
46
46
|
|
47
47
|
it "allows an attribute called 'attributes'" do
|
48
48
|
subject.attribute 'attributes', default: 'bag of junk'
|
49
49
|
|
50
|
-
expect(subject.attributes.
|
50
|
+
expect(subject.attributes.berks_dig('attributes')).to eql('bag of junk')
|
51
51
|
end
|
52
52
|
|
53
53
|
it "allows an attribute called 'attribute'" do
|
54
54
|
subject.attribute 'attribute', default: 'some value'
|
55
55
|
|
56
|
-
expect(subject.attributes.
|
56
|
+
expect(subject.attributes.berks_dig('attribute')).to eql('some value')
|
57
57
|
end
|
58
58
|
|
59
59
|
it "allows an attribute that has a lambda default value" do
|
60
60
|
subject.attribute 'brooke', default: ->{ "winsor".upcase }
|
61
61
|
|
62
|
-
expect(subject.attributes.
|
62
|
+
expect(subject.attributes.berks_dig('brooke')).to be_a(Proc)
|
63
63
|
end
|
64
64
|
end
|
65
65
|
|
data/varia_model.gemspec
CHANGED
@@ -15,10 +15,10 @@ Gem::Specification.new do |spec|
|
|
15
15
|
spec.name = "varia_model"
|
16
16
|
spec.require_paths = ["lib"]
|
17
17
|
spec.version = VariaModel::VERSION
|
18
|
-
spec.required_ruby_version = ">= 2.
|
18
|
+
spec.required_ruby_version = ">= 2.2.0"
|
19
19
|
|
20
20
|
spec.add_dependency "hashie", ">= 2.0.2", "< 4.0.0"
|
21
|
-
spec.add_dependency "buff-extensions", "~>
|
21
|
+
spec.add_dependency "buff-extensions", "~> 2.0"
|
22
22
|
|
23
23
|
spec.add_development_dependency "buff-ruby_engine", "~> 0.1"
|
24
24
|
spec.add_development_dependency "thor", "~> 0.18.0"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: varia_model
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jamie Winsor
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-08-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: hashie
|
@@ -36,14 +36,14 @@ dependencies:
|
|
36
36
|
requirements:
|
37
37
|
- - "~>"
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: '
|
39
|
+
version: '2.0'
|
40
40
|
type: :runtime
|
41
41
|
prerelease: false
|
42
42
|
version_requirements: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
44
|
- - "~>"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '
|
46
|
+
version: '2.0'
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: buff-ruby_engine
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -218,7 +218,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
218
218
|
requirements:
|
219
219
|
- - ">="
|
220
220
|
- !ruby/object:Gem::Version
|
221
|
-
version: 2.
|
221
|
+
version: 2.2.0
|
222
222
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
223
223
|
requirements:
|
224
224
|
- - ">="
|
@@ -226,7 +226,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
226
226
|
version: '0'
|
227
227
|
requirements: []
|
228
228
|
rubyforge_project:
|
229
|
-
rubygems_version: 2.
|
229
|
+
rubygems_version: 2.5.1
|
230
230
|
signing_key:
|
231
231
|
specification_version: 4
|
232
232
|
summary: A mixin to provide objects with magic attribute reading and writing
|