enumerize 0.5.0 → 0.5.1

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