classy_enum 1.3.0 → 1.3.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/README.textile +2 -1
- data/VERSION +1 -1
- data/classy_enum.gemspec +2 -2
- data/lib/classy_enum/instance_methods.rb +7 -0
- data/spec/classy_enum_owner_reference_spec.rb +5 -0
- metadata +13 -13
data/README.textile
CHANGED
@@ -104,7 +104,8 @@ With this setup, I can now do the following:
|
|
104
104
|
@alarm = Alarm.create(:priority => :medium)
|
105
105
|
|
106
106
|
@alarm.priority # => PriorityMedium
|
107
|
-
@alarm.priority.
|
107
|
+
@alarm.priority.medium? # => true
|
108
|
+
@alarm.priority.high? # => false
|
108
109
|
@alarm.priority.to_s # => 'medium'
|
109
110
|
@alarm.priority.name # => 'Medium'
|
110
111
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.3.
|
1
|
+
1.3.1
|
data/classy_enum.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{classy_enum}
|
8
|
-
s.version = "1.3.
|
8
|
+
s.version = "1.3.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = [%q{Peter Brown}]
|
12
|
-
s.date = %q{2011-
|
12
|
+
s.date = %q{2011-10-28}
|
13
13
|
s.description = %q{A utility that adds class based enum functionality to ActiveRecord attributes}
|
14
14
|
s.email = %q{github@lette.us}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -90,6 +90,13 @@ module ClassyEnum
|
|
90
90
|
to_s
|
91
91
|
end
|
92
92
|
|
93
|
+
# Overrides as_json to remove owner reference recursion issues
|
94
|
+
def as_json(options=nil)
|
95
|
+
json = super(options)
|
96
|
+
json.delete('owner')
|
97
|
+
json
|
98
|
+
end
|
99
|
+
|
93
100
|
protected
|
94
101
|
|
95
102
|
# Determine if the enum attribute is a particular member.
|
@@ -22,6 +22,11 @@ describe Cat do
|
|
22
22
|
it 'should delegate breed color to breed with an ownership reference' do
|
23
23
|
abyssian.breed_color { should eql('black Abyssian') }
|
24
24
|
persian.breed_color { should eql('white Persian') }
|
25
|
+
end
|
25
26
|
|
27
|
+
it 'should correctly serialize without the owner reference' do
|
28
|
+
abyssian.to_json.should == "{\"cat\":{\"breed\":{\"to_s\":\"abyssian\",\"index\":1}}}"
|
29
|
+
persian.to_json.should == "{\"cat\":{\"breed\":{\"to_s\":\"persian\",\"index\":4}}}"
|
26
30
|
end
|
31
|
+
|
27
32
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: classy_enum
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-
|
12
|
+
date: 2011-10-28 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
|
-
requirement: &
|
16
|
+
requirement: &70107427721740 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 3.0.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70107427721740
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: jeweler
|
27
|
-
requirement: &
|
27
|
+
requirement: &70107427721140 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 1.6.2
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70107427721140
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rspec-rails
|
38
|
-
requirement: &
|
38
|
+
requirement: &70107427720540 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 2.6.1
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70107427720540
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: formtastic
|
49
|
-
requirement: &
|
49
|
+
requirement: &70107427719940 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.2.4
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70107427719940
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: sqlite3-ruby
|
60
|
-
requirement: &
|
60
|
+
requirement: &70107427719340 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70107427719340
|
69
69
|
description: A utility that adds class based enum functionality to ActiveRecord attributes
|
70
70
|
email: github@lette.us
|
71
71
|
executables: []
|
@@ -114,7 +114,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
114
114
|
version: '0'
|
115
115
|
segments:
|
116
116
|
- 0
|
117
|
-
hash: -
|
117
|
+
hash: -3596092072518778020
|
118
118
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
119
119
|
none: false
|
120
120
|
requirements:
|