varia_model 0.5.0 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|