attr_extras 2.2.1 → 2.2.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
  SHA1:
3
- metadata.gz: 1a73dba01ae15a21f182bf0f75ba144f53894ad3
4
- data.tar.gz: 04674763cf6c41bf2ae1e6209ff74c317a8b645d
3
+ metadata.gz: 8f439f8648baa182127cdc634072670fa5651ae4
4
+ data.tar.gz: e0b28afc47123a801a92154e1e5616be24962df8
5
5
  SHA512:
6
- metadata.gz: 584bd69b6af78936a1d33c000690357356b71c18d7f7203faa1834a83e9373a29f9c2729c962c415c2bb662aa3a0852cc9133fe61b4fc816a3e1072d7a9c8507
7
- data.tar.gz: 23b28d7605848caae757fa3c8bcc88200a24e531a58034b30ba08eee71da6238f3c4a1362dd01ffd5bee8e4a9f1c3d3f9144a4286fdcd540e56c5ba380de7047
6
+ metadata.gz: 641e66f8a897f8a32585674cb30a16c6461e2c5c68d795b2bf79117285078e58656a7be04a77e8c5a1ab112ab57375351221ede2c73e16a50194881d88661894
7
+ data.tar.gz: bb9534b45b03c02e410ab8dd6ad3f4b4ac9d1dd7d7913b70ac883e587d2f1db22d46047aad358ebc838135dcee18052f208eec0144fa2663b582f6bdb2bf3a71
data/README.md CHANGED
@@ -178,6 +178,25 @@ Or install it yourself as:
178
178
  gem install attr_extras
179
179
 
180
180
 
181
+ ## Running the tests
182
+
183
+ Run then with:
184
+
185
+ `rake`
186
+
187
+ Or to see warnings (try not to have any):
188
+
189
+ `RUBYOPT=-w rake`
190
+
191
+
192
+ ## Contributors
193
+
194
+ * [Henrik Nyh](https://github.com/henrik)
195
+ * [Joakim Kolsjö](https://github.com/joakimk)
196
+ * [Victor Arias](https://github.com/victorarias)
197
+ * [Teo Ljungberg](https://github.com/teoljungberg)
198
+
199
+
181
200
  ## License
182
201
 
183
202
  Copyright (c) 2012-2014 [Barsoom AB](http://barsoom.se)
data/lib/attr_extras.rb CHANGED
@@ -10,6 +10,10 @@ module AttrExtras
10
10
  end
11
11
 
12
12
  def attr_private(*names)
13
+ # Need this to avoid "private attribute?" warnings when running
14
+ # the full test suite; not sure why exactly.
15
+ public
16
+
13
17
  attr_reader(*names)
14
18
  private(*names)
15
19
  end
@@ -34,12 +38,12 @@ module AttrExtras
34
38
 
35
39
  def pattr_initialize(*names)
36
40
  attr_initialize(*names)
37
- attr_private *Utils.flat_names(names)
41
+ attr_private(*Utils.flat_names(names))
38
42
  end
39
43
 
40
44
  def vattr_initialize(*names)
41
45
  attr_initialize(*names)
42
- attr_value *Utils.flat_names(names)
46
+ attr_value(*Utils.flat_names(names))
43
47
  end
44
48
 
45
49
  def method_object(method_name, *names)
@@ -1,3 +1,3 @@
1
1
  module AttrExtras
2
- VERSION = "2.2.1"
2
+ VERSION = "2.2.2"
3
3
  end
@@ -1,288 +1,4 @@
1
- # encoding: utf-8
2
-
3
- require "minitest/autorun"
4
- require "minitest/pride"
5
- require "attr_extras"
6
-
7
- describe Object, ".method_object" do
8
- it "creates a class method that instantiates and runs that instance method" do
9
- klass = Class.new do
10
- method_object :fooable?,
11
- :foo
12
-
13
- def fooable?
14
- foo
15
- end
16
- end
17
-
18
- assert klass.fooable?(true)
19
- refute klass.fooable?(false)
20
- end
21
-
22
- it "doesn't require attributes" do
23
- klass = Class.new do
24
- method_object :fooable?
25
-
26
- def fooable?
27
- true
28
- end
29
- end
30
-
31
- assert klass.fooable?
32
- end
33
- end
34
-
35
- describe Object, ".attr_initialize" do
36
- let(:klass) do
37
- Class.new do
38
- attr_initialize :foo, :bar
39
- end
40
- end
41
-
42
- it "creates an initializer setting those instance variables" do
43
- example = klass.new("Foo", "Bar")
44
- example.instance_variable_get("@foo").must_equal "Foo"
45
- example.instance_variable_get("@bar").must_equal "Bar"
46
- end
47
-
48
- it "requires all arguments" do
49
- lambda { klass.new("Foo") }.must_raise ArgumentError
50
- end
51
-
52
- it "can set ivars from a hash" do
53
- klass = Class.new do
54
- attr_initialize :foo, [:bar, :baz]
55
- end
56
-
57
- example = klass.new("Foo", :bar => "Bar", :baz => "Baz")
58
- example.instance_variable_get("@foo").must_equal "Foo"
59
- example.instance_variable_get("@bar").must_equal "Bar"
60
- example.instance_variable_get("@baz").must_equal "Baz"
61
- end
62
-
63
- it "treats hash values as optional" do
64
- klass = Class.new do
65
- attr_initialize :foo, [:bar, :baz]
66
- end
67
-
68
- example = klass.new("Foo", :bar => "Bar")
69
- example.instance_variable_get("@baz").must_equal nil
70
-
71
- example = klass.new("Foo")
72
- example.instance_variable_get("@bar").must_equal nil
73
- end
74
-
75
- it "can require hash values" do
76
- klass = Class.new do
77
- attr_initialize [:optional, :required!]
78
- end
79
-
80
- example = klass.new(:required => "X")
81
- example.instance_variable_get("@required").must_equal "X"
82
-
83
- lambda { klass.new(:optional => "X") }.must_raise KeyError
84
- end
85
- end
86
-
87
- describe Object, ".attr_private" do
88
- let(:klass) do
89
- Class.new do
90
- attr_private :foo, :bar
91
- end
92
- end
93
-
94
- it "creates private readers" do
95
- example = klass.new
96
- example.instance_variable_set("@foo", "Foo")
97
- example.instance_variable_set("@bar", "Bar")
98
- example.send(:foo).must_equal "Foo"
99
- example.send(:bar).must_equal "Bar"
100
- lambda { example.foo }.must_raise NoMethodError
101
- end
102
- end
103
-
104
- describe Object, ".pattr_initialize" do
105
- it "creates both initializer and private readers" do
106
- klass = Class.new do
107
- pattr_initialize :foo, :bar
108
- end
109
-
110
- example = klass.new("Foo", "Bar")
111
- example.send(:foo).must_equal "Foo"
112
- end
113
-
114
- it "works with hash ivars" do
115
- klass = Class.new do
116
- pattr_initialize :foo, [:bar, :baz!]
117
- end
118
-
119
- example = klass.new("Foo", :bar => "Bar", :baz => "Baz")
120
- example.send(:baz).must_equal "Baz"
121
- end
122
- end
123
-
124
- describe Object, ".vattr_initialize" do
125
- it "creates initializer, value readers and value object identity" do
126
- klass = Class.new do
127
- vattr_initialize :foo, :bar
128
- end
129
-
130
- example1 = klass.new("Foo", "Bar")
131
- example2 = klass.new("Foo", "Bar")
132
-
133
- example1.foo.must_equal "Foo"
134
- example1.must_equal example2
135
- end
136
-
137
- it "works with hash ivars" do
138
- klass = Class.new do
139
- vattr_initialize :foo, [:bar, :baz!]
140
- end
141
-
142
- example1 = klass.new("Foo", :bar => "Bar", :baz => "Baz")
143
- example2 = klass.new("Foo", :bar => "Bar", :baz => "Baz")
144
- example1.baz.must_equal "Baz"
145
- example1.must_equal example2
146
- end
147
- end
148
-
149
- describe Object, ".attr_value" do
150
- it "creates public readers" do
151
- klass = Class.new do
152
- attr_value :foo, :bar
153
- end
154
-
155
- example = klass.new
156
- example.instance_variable_set("@foo", "Foo")
157
- example.foo.must_equal "Foo"
158
- lambda { example.foo = "new value" }.must_raise NoMethodError
159
- end
160
-
161
- it "defines equality based on the attributes" do
162
- klass = Class.new do
163
- attr_initialize :foo, :bar
164
- attr_value :foo, :bar
165
- end
166
-
167
- example1 = klass.new("Foo", "Bar")
168
- example2 = klass.new("Foo", "Bar")
169
- example3 = klass.new("Arroz", "Feijão")
170
-
171
- assert example1 == example2, "Examples should be equal"
172
- refute example1 != example2, "Examples should be equal"
173
-
174
- refute example1 == example3, "Examples should not be equal"
175
- assert example1 != example3, "Examples should not be equal"
176
- end
177
-
178
- it "defines equality based on the actual type" do
179
- klass1 = Class.new do
180
- attr_initialize :foo
181
- attr_value :foo
182
- end
183
- klass2 = Class.new do
184
- attr_initialize :foo
185
- attr_value :foo
186
- end
187
-
188
- example1 = klass1.new("Foo")
189
- example2 = klass2.new("Foo")
190
-
191
- assert example1 != example2, "Examples should not be equal"
192
- refute example1 == example2, "Examples should not be equal"
193
- end
194
-
195
- it "considers an instance equal to itself" do
196
- klass = Class.new do
197
- attr_initialize :foo
198
- attr_value :foo
199
- end
200
-
201
- instance = klass.new("Foo")
202
-
203
- assert instance == instance, "Instance should be equal to itself"
204
- end
205
-
206
- it "can compare value objects to other kinds of objects" do
207
- klass = Class.new do
208
- attr_initialize :foo
209
- attr_value :foo
210
- end
211
-
212
- instance = klass.new("Foo")
213
-
214
- assert instance != "a string"
215
- end
216
-
217
- it "hashes objects the same if they have the same attributes" do
218
- klass = Class.new do
219
- attr_initialize :foo
220
- attr_value :foo
221
- end
222
- klass2 = Class.new do
223
- attr_initialize :foo
224
- attr_value :foo
225
- end
226
-
227
- example1 = klass.new("Foo")
228
- example2 = klass.new("Foo")
229
- example3 = klass.new("Bar")
230
- example4 = klass2.new("Foo")
231
-
232
- example1.hash.must_equal example2.hash
233
- example1.hash.wont_equal example3.hash
234
- example1.hash.wont_equal example4.hash
235
-
236
- assert example1.eql?(example2), "Examples should be 'eql?'"
237
- refute example1.eql?(example3), "Examples should not be 'eql?'"
238
- refute example1.eql?(example4), "Examples should not be 'eql?'"
239
-
240
- Set[example1, example2, example3, example4].length.must_equal 3
241
-
242
- hash = {}
243
- hash[example1] = :awyeah
244
- hash[example3] = :wat
245
- hash[example4] = :nooooo
246
- hash[example2].must_equal :awyeah
247
- end
248
- end
249
-
250
- describe Object, ".attr_id_query" do
251
- it "creates id query methods" do
252
- klass = Class.new do
253
- attr_id_query :baz?, :boink?
254
- attr_accessor :baz_id
255
- end
256
-
257
- example = klass.new
258
- refute example.baz?
259
-
260
- example.baz_id = 123
261
- assert example.baz?
262
- end
263
-
264
- it "requires a trailing questionmark" do
265
- lambda { Object.attr_id_query(:foo) }.must_raise ArgumentError
266
- end
267
- end
268
-
269
- describe Object, ".attr_query" do
270
- it "creates attribute query methods" do
271
- klass = Class.new do
272
- attr_query :flurp?
273
- attr_accessor :flurp
274
- end
275
-
276
- example = klass.new
277
- refute example.flurp?
278
- example.flurp = "!"
279
- assert example.flurp?
280
- end
281
-
282
- it "requires a trailing questionmark" do
283
- lambda { Object.attr_query(:foo) }.must_raise ArgumentError
284
- end
285
- end
1
+ require_relative "spec_helper"
286
2
 
287
3
  describe AttrExtras, "in modules" do
288
4
  it "is supported" do
@@ -0,0 +1,20 @@
1
+ require_relative "spec_helper"
2
+
3
+ describe Object, ".attr_id_query" do
4
+ it "creates id query methods" do
5
+ klass = Class.new do
6
+ attr_id_query :baz?, :boink?
7
+ attr_accessor :baz_id
8
+ end
9
+
10
+ example = klass.new
11
+ refute example.baz?
12
+
13
+ example.baz_id = 123
14
+ assert example.baz?
15
+ end
16
+
17
+ it "requires a trailing questionmark" do
18
+ lambda { Object.attr_id_query(:foo) }.must_raise ArgumentError
19
+ end
20
+ end
@@ -0,0 +1,53 @@
1
+ require_relative "spec_helper"
2
+
3
+ describe Object, ".attr_initialize" do
4
+ let(:klass) do
5
+ Class.new do
6
+ attr_initialize :foo, :bar
7
+ end
8
+ end
9
+
10
+ it "creates an initializer setting those instance variables" do
11
+ example = klass.new("Foo", "Bar")
12
+ example.instance_variable_get("@foo").must_equal "Foo"
13
+ example.instance_variable_get("@bar").must_equal "Bar"
14
+ end
15
+
16
+ it "requires all arguments" do
17
+ lambda { klass.new("Foo") }.must_raise ArgumentError
18
+ end
19
+
20
+ it "can set ivars from a hash" do
21
+ klass = Class.new do
22
+ attr_initialize :foo, [:bar, :baz]
23
+ end
24
+
25
+ example = klass.new("Foo", :bar => "Bar", :baz => "Baz")
26
+ example.instance_variable_get("@foo").must_equal "Foo"
27
+ example.instance_variable_get("@bar").must_equal "Bar"
28
+ example.instance_variable_get("@baz").must_equal "Baz"
29
+ end
30
+
31
+ it "treats hash values as optional" do
32
+ klass = Class.new do
33
+ attr_initialize :foo, [:bar, :baz]
34
+ end
35
+
36
+ example = klass.new("Foo", :bar => "Bar")
37
+ example.instance_variable_get("@baz").must_equal nil
38
+
39
+ example = klass.new("Foo")
40
+ example.instance_variable_get("@bar").must_equal nil
41
+ end
42
+
43
+ it "can require hash values" do
44
+ klass = Class.new do
45
+ attr_initialize [:optional, :required!]
46
+ end
47
+
48
+ example = klass.new(:required => "X")
49
+ example.instance_variable_get("@required").must_equal "X"
50
+
51
+ lambda { klass.new(:optional => "X") }.must_raise KeyError
52
+ end
53
+ end
@@ -0,0 +1,18 @@
1
+ require_relative "spec_helper"
2
+
3
+ describe Object, ".attr_private" do
4
+ let(:klass) do
5
+ Class.new do
6
+ attr_private :foo, :bar
7
+ end
8
+ end
9
+
10
+ it "creates private readers" do
11
+ example = klass.new
12
+ example.instance_variable_set("@foo", "Foo")
13
+ example.instance_variable_set("@bar", "Bar")
14
+ example.send(:foo).must_equal "Foo"
15
+ example.send(:bar).must_equal "Bar"
16
+ lambda { example.foo }.must_raise NoMethodError
17
+ end
18
+ end
@@ -0,0 +1,19 @@
1
+ require_relative "spec_helper"
2
+
3
+ describe Object, ".attr_query" do
4
+ it "creates attribute query methods" do
5
+ klass = Class.new do
6
+ attr_query :flurp?
7
+ attr_accessor :flurp
8
+ end
9
+
10
+ example = klass.new
11
+ refute example.flurp?
12
+ example.flurp = "!"
13
+ assert example.flurp?
14
+ end
15
+
16
+ it "requires a trailing questionmark" do
17
+ lambda { Object.attr_query(:foo) }.must_raise ArgumentError
18
+ end
19
+ end
@@ -0,0 +1,105 @@
1
+ # encoding: utf-8
2
+
3
+ require "set"
4
+ require_relative "spec_helper"
5
+
6
+ describe Object, ".attr_value" do
7
+ it "creates public readers" do
8
+ klass = Class.new do
9
+ attr_value :foo, :bar
10
+ end
11
+
12
+ example = klass.new
13
+ example.instance_variable_set("@foo", "Foo")
14
+ example.foo.must_equal "Foo"
15
+ lambda { example.foo = "new value" }.must_raise NoMethodError
16
+ end
17
+
18
+ it "defines equality based on the attributes" do
19
+ klass = Class.new do
20
+ attr_initialize :foo, :bar
21
+ attr_value :foo, :bar
22
+ end
23
+
24
+ example1 = klass.new("Foo", "Bar")
25
+ example2 = klass.new("Foo", "Bar")
26
+ example3 = klass.new("Arroz", "Feijão")
27
+
28
+ assert example1 == example2, "Examples should be equal"
29
+ refute example1 != example2, "Examples should be equal"
30
+
31
+ refute example1 == example3, "Examples should not be equal"
32
+ assert example1 != example3, "Examples should not be equal"
33
+ end
34
+
35
+ it "defines equality based on the actual type" do
36
+ klass1 = Class.new do
37
+ attr_initialize :foo
38
+ attr_value :foo
39
+ end
40
+ klass2 = Class.new do
41
+ attr_initialize :foo
42
+ attr_value :foo
43
+ end
44
+
45
+ example1 = klass1.new("Foo")
46
+ example2 = klass2.new("Foo")
47
+
48
+ assert example1 != example2, "Examples should not be equal"
49
+ refute example1 == example2, "Examples should not be equal"
50
+ end
51
+
52
+ it "considers an instance equal to itself" do
53
+ klass = Class.new do
54
+ attr_initialize :foo
55
+ attr_value :foo
56
+ end
57
+
58
+ instance = klass.new("Foo")
59
+
60
+ assert instance == instance, "Instance should be equal to itself"
61
+ end
62
+
63
+ it "can compare value objects to other kinds of objects" do
64
+ klass = Class.new do
65
+ attr_initialize :foo
66
+ attr_value :foo
67
+ end
68
+
69
+ instance = klass.new("Foo")
70
+
71
+ assert instance != "a string"
72
+ end
73
+
74
+ it "hashes objects the same if they have the same attributes" do
75
+ klass = Class.new do
76
+ attr_initialize :foo
77
+ attr_value :foo
78
+ end
79
+ klass2 = Class.new do
80
+ attr_initialize :foo
81
+ attr_value :foo
82
+ end
83
+
84
+ example1 = klass.new("Foo")
85
+ example2 = klass.new("Foo")
86
+ example3 = klass.new("Bar")
87
+ example4 = klass2.new("Foo")
88
+
89
+ example1.hash.must_equal example2.hash
90
+ example1.hash.wont_equal example3.hash
91
+ example1.hash.wont_equal example4.hash
92
+
93
+ assert example1.eql?(example2), "Examples should be 'eql?'"
94
+ refute example1.eql?(example3), "Examples should not be 'eql?'"
95
+ refute example1.eql?(example4), "Examples should not be 'eql?'"
96
+
97
+ Set[example1, example2, example3, example4].length.must_equal 3
98
+
99
+ hash = {}
100
+ hash[example1] = :awyeah
101
+ hash[example3] = :wat
102
+ hash[example4] = :nooooo
103
+ hash[example2].must_equal :awyeah
104
+ end
105
+ end
@@ -0,0 +1,29 @@
1
+ require_relative "spec_helper"
2
+
3
+ describe Object, ".method_object" do
4
+ it "creates a class method that instantiates and runs that instance method" do
5
+ klass = Class.new do
6
+ method_object :fooable?,
7
+ :foo
8
+
9
+ def fooable?
10
+ foo
11
+ end
12
+ end
13
+
14
+ assert klass.fooable?(true)
15
+ refute klass.fooable?(false)
16
+ end
17
+
18
+ it "doesn't require attributes" do
19
+ klass = Class.new do
20
+ method_object :fooable?
21
+
22
+ def fooable?
23
+ true
24
+ end
25
+ end
26
+
27
+ assert klass.fooable?
28
+ end
29
+ end
@@ -0,0 +1,21 @@
1
+ require_relative "spec_helper"
2
+
3
+ describe Object, ".pattr_initialize" do
4
+ it "creates both initializer and private readers" do
5
+ klass = Class.new do
6
+ pattr_initialize :foo, :bar
7
+ end
8
+
9
+ example = klass.new("Foo", "Bar")
10
+ example.send(:foo).must_equal "Foo"
11
+ end
12
+
13
+ it "works with hash ivars" do
14
+ klass = Class.new do
15
+ pattr_initialize :foo, [:bar, :baz!]
16
+ end
17
+
18
+ example = klass.new("Foo", :bar => "Bar", :baz => "Baz")
19
+ example.send(:baz).must_equal "Baz"
20
+ end
21
+ end
@@ -0,0 +1,5 @@
1
+ require "minitest/autorun"
2
+ require "minitest/pride"
3
+
4
+ $: << File.dirname(__FILE__) + "/../lib"
5
+ require "attr_extras"
@@ -0,0 +1,26 @@
1
+ require_relative "spec_helper"
2
+
3
+ describe Object, ".vattr_initialize" do
4
+ it "creates initializer, value readers and value object identity" do
5
+ klass = Class.new do
6
+ vattr_initialize :foo, :bar
7
+ end
8
+
9
+ example1 = klass.new("Foo", "Bar")
10
+ example2 = klass.new("Foo", "Bar")
11
+
12
+ example1.foo.must_equal "Foo"
13
+ example1.must_equal example2
14
+ end
15
+
16
+ it "works with hash ivars" do
17
+ klass = Class.new do
18
+ vattr_initialize :foo, [:bar, :baz!]
19
+ end
20
+
21
+ example1 = klass.new("Foo", :bar => "Bar", :baz => "Baz")
22
+ example2 = klass.new("Foo", :bar => "Bar", :baz => "Baz")
23
+ example1.baz.must_equal "Baz"
24
+ example1.must_equal example2
25
+ end
26
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: attr_extras
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.1
4
+ version: 2.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henrik Nyh
@@ -10,20 +10,20 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-03-15 00:00:00.000000000 Z
13
+ date: 2014-03-16 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rake
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
- - - '>='
19
+ - - ">="
20
20
  - !ruby/object:Gem::Version
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
- - - '>='
26
+ - - ">="
27
27
  - !ruby/object:Gem::Version
28
28
  version: '0'
29
29
  description:
@@ -33,9 +33,9 @@ executables: []
33
33
  extensions: []
34
34
  extra_rdoc_files: []
35
35
  files:
36
- - .gitignore
37
- - .rvmrc
38
- - .travis.yml
36
+ - ".gitignore"
37
+ - ".rvmrc"
38
+ - ".travis.yml"
39
39
  - Gemfile
40
40
  - README.md
41
41
  - Rakefile
@@ -47,6 +47,15 @@ files:
47
47
  - lib/attr_extras/version.rb
48
48
  - script/test
49
49
  - spec/attr_extras_spec.rb
50
+ - spec/attr_id_query_spec.rb
51
+ - spec/attr_initialize_spec.rb
52
+ - spec/attr_private_spec.rb
53
+ - spec/attr_query_spec.rb
54
+ - spec/attr_value_spec.rb
55
+ - spec/method_object_spec.rb
56
+ - spec/pattr_initialize_spec.rb
57
+ - spec/spec_helper.rb
58
+ - spec/vattr_initialize_spec.rb
50
59
  homepage: https://github.com/barsoom/attr_extras
51
60
  licenses:
52
61
  - MIT
@@ -57,19 +66,28 @@ require_paths:
57
66
  - lib
58
67
  required_ruby_version: !ruby/object:Gem::Requirement
59
68
  requirements:
60
- - - '>='
69
+ - - ">="
61
70
  - !ruby/object:Gem::Version
62
71
  version: '0'
63
72
  required_rubygems_version: !ruby/object:Gem::Requirement
64
73
  requirements:
65
- - - '>='
74
+ - - ">="
66
75
  - !ruby/object:Gem::Version
67
76
  version: '0'
68
77
  requirements: []
69
78
  rubyforge_project:
70
- rubygems_version: 2.2.0
79
+ rubygems_version: 2.2.2
71
80
  signing_key:
72
81
  specification_version: 4
73
82
  summary: Takes some boilerplate out of Ruby with methods like attr_initialize.
74
83
  test_files:
75
84
  - spec/attr_extras_spec.rb
85
+ - spec/attr_id_query_spec.rb
86
+ - spec/attr_initialize_spec.rb
87
+ - spec/attr_private_spec.rb
88
+ - spec/attr_query_spec.rb
89
+ - spec/attr_value_spec.rb
90
+ - spec/method_object_spec.rb
91
+ - spec/pattr_initialize_spec.rb
92
+ - spec/spec_helper.rb
93
+ - spec/vattr_initialize_spec.rb