enumerize 0.2.1 → 0.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.
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ## 0.2.2 (May 22, 2012) ##
2
+
3
+ ### bug fix
4
+ * Correctly assign default value to handle mass assignment in Active Record (by [@lest](https://github.com/lest))
5
+
1
6
  ## 0.2.1 (May 21, 2012) ##
2
7
 
3
8
  ### bug fix
@@ -92,7 +92,7 @@ module Enumerize
92
92
  def initialize(*)
93
93
  super
94
94
  self.class.enumerized_attributes.each do |attr|
95
- public_send("#{attr.name}=", attr.default_value) if public_send(attr.name).nil?
95
+ public_send("#{attr.name}=", attr.default_value) unless _enumerized_values_for_validation.key?(attr.name)
96
96
  end
97
97
  end
98
98
 
@@ -1,3 +1,3 @@
1
1
  module Enumerize
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.2"
3
3
  end
@@ -60,6 +60,12 @@ describe Enumerize::ActiveRecord do
60
60
  user.wont_be :valid?
61
61
  end
62
62
 
63
+ it 'validates inclusion on mass assignment' do
64
+ assert_raises ActiveRecord::RecordInvalid do
65
+ User.create!(role: 'wrong')
66
+ end
67
+ end
68
+
63
69
  it "uses persisted value for validation if it hasn't been set" do
64
70
  user = User.create! :sex => :male
65
71
  User.find(user).read_attribute_for_validation(:sex).must_equal 'male'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enumerize
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-05-21 00:00:00.000000000 Z
12
+ date: 2012-05-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -78,7 +78,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
78
78
  version: '0'
79
79
  segments:
80
80
  - 0
81
- hash: 2467597256699098975
81
+ hash: 4327206353620209815
82
82
  required_rubygems_version: !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
@@ -87,7 +87,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
87
87
  version: '0'
88
88
  segments:
89
89
  - 0
90
- hash: 2467597256699098975
90
+ hash: 4327206353620209815
91
91
  requirements: []
92
92
  rubyforge_project:
93
93
  rubygems_version: 1.8.23