enumerize 0.5.0 → 0.5.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.
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## 0.5.1 (December 10, 2012) ##
2
+
3
+ ### bug fix
4
+
5
+ * Always return Enumerize::Set for multiple attributes (by [@nashby](https://github.com/nashby))
6
+
1
7
  ## 0.5.0 (October 31, 2012) ##
2
8
 
3
9
  The previous method of adding enumerize to a class was deprecated. Please use
data/README.md CHANGED
@@ -24,7 +24,7 @@ Basic:
24
24
  class User
25
25
  extend Enumerize
26
26
 
27
- enumerize :sex, :in => [:male, :female]
27
+ enumerize :sex, in: [:male, :female]
28
28
  end
29
29
  ```
30
30
 
@@ -34,9 +34,9 @@ ActiveRecord:
34
34
  class User < ActiveRecord::Base
35
35
  extend Enumerize
36
36
 
37
- enumerize :sex, :in => [:male, :female]
37
+ enumerize :sex, in: [:male, :female]
38
38
 
39
- enumerize :role, :in => [:user, :admin], :default => :user
39
+ enumerize :role, in: [:user, :admin], default: :user
40
40
  end
41
41
  ```
42
42
 
@@ -48,7 +48,7 @@ class User
48
48
  extend Enumerize
49
49
 
50
50
  field :role
51
- enumerize :role, :in => [:user, :admin], :default => :user
51
+ enumerize :role, in: [:user, :admin], default: :user
52
52
  end
53
53
  ```
54
54
 
@@ -142,7 +142,7 @@ To make some attributes shared across different classes it's possible to define
142
142
  module PersonEnumerations
143
143
  extend Enumerize
144
144
 
145
- enumerize :sex, :in => %w[male female]
145
+ enumerize :sex, in: %w[male female]
146
146
  end
147
147
 
148
148
  class Person
@@ -160,7 +160,7 @@ It's also possible to store enumerized attribute value using custom values (e.g.
160
160
  class User < ActiveRecord::Base
161
161
  extend Enumerize
162
162
 
163
- enumerize :role, :in => {:user => 1, :admin => 2}
163
+ enumerize :role, in: {:user => 1, :admin => 2}
164
164
  end
165
165
  ```
166
166
 
@@ -170,7 +170,7 @@ Array-like attributes with plain ruby objects:
170
170
  class User
171
171
  extend Enumerize
172
172
 
173
- enumerize :interests, :in => [:music, :sports], :multiple => true
173
+ enumerize :interests, in: [:music, :sports], multiple: true
174
174
  end
175
175
 
176
176
  user = User.new
@@ -185,7 +185,7 @@ class User < ActiveRecord::Base
185
185
  extend Enumerize
186
186
 
187
187
  serialize :interests, Array
188
- enumerize :interests, :in => [:music, :sports], :multiple => true
188
+ enumerize :interests, in: [:music, :sports], multiple: true
189
189
  end
190
190
  ```
191
191
 
@@ -69,9 +69,7 @@ module Enumerize
69
69
  def define_methods!(mod)
70
70
  mod.module_eval <<-RUBY, __FILE__, __LINE__ + 1
71
71
  def #{name}
72
- if defined?(@_#{name}_enumerized_set)
73
- @_#{name}_enumerized_set
74
- else
72
+ unless defined?(@_#{name}_enumerized_set)
75
73
  if defined?(super)
76
74
  self.#{name} = super
77
75
  else
@@ -82,6 +80,8 @@ module Enumerize
82
80
  end
83
81
  end
84
82
  end
83
+
84
+ @_#{name}_enumerized_set
85
85
  end
86
86
 
87
87
  def #{name}=(values)
@@ -1,3 +1,3 @@
1
1
  module Enumerize
2
- VERSION = "0.5.0"
2
+ VERSION = "0.5.1"
3
3
  end
@@ -95,6 +95,7 @@ describe Enumerize::ActiveRecord do
95
95
  user.save!
96
96
 
97
97
  user = User.find(user.id)
98
+ user.interests.must_be_instance_of Enumerize::Set
98
99
  user.interests.must_equal %w(music)
99
100
  user.interests << :sports
100
101
  user.interests.must_equal %w(music sports)
metadata CHANGED
@@ -1,32 +1,32 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enumerize
3
3
  version: !ruby/object:Gem::Version
4
+ version: 0.5.1
4
5
  prerelease:
5
- version: 0.5.0
6
6
  platform: ruby
7
7
  authors:
8
8
  - Sergey Nartimov
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-31 00:00:00.000000000 Z
12
+ date: 2012-12-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- requirement: !ruby/object:Gem::Requirement
15
+ type: :runtime
16
+ version_requirements: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ! '>='
18
20
  - !ruby/object:Gem::Version
19
21
  version: '3.2'
22
+ prerelease: false
23
+ name: activesupport
24
+ requirement: !ruby/object:Gem::Requirement
20
25
  none: false
21
- type: :runtime
22
- version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - ! '>='
25
28
  - !ruby/object:Gem::Version
26
29
  version: '3.2'
27
- none: false
28
- prerelease: false
29
- name: activesupport
30
30
  description: Enumerated attributes with I18n and ActiveRecord/Mongoid support
31
31
  email: team@brainspec.com
32
32
  executables: []
@@ -76,23 +76,23 @@ rdoc_options: []
76
76
  require_paths:
77
77
  - lib
78
78
  required_ruby_version: !ruby/object:Gem::Requirement
79
+ none: false
79
80
  requirements:
80
81
  - - ! '>='
81
82
  - !ruby/object:Gem::Version
82
- hash: -4428159694445712973
83
- version: '0'
84
83
  segments:
85
84
  - 0
86
- none: false
85
+ hash: -178434692500399788
86
+ version: '0'
87
87
  required_rubygems_version: !ruby/object:Gem::Requirement
88
+ none: false
88
89
  requirements:
89
90
  - - ! '>='
90
91
  - !ruby/object:Gem::Version
91
- hash: -4428159694445712973
92
- version: '0'
93
92
  segments:
94
93
  - 0
95
- none: false
94
+ hash: -178434692500399788
95
+ version: '0'
96
96
  requirements: []
97
97
  rubyforge_project:
98
98
  rubygems_version: 1.8.23