charisma 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -5,7 +5,7 @@ Gem::Specification.new do |s|
5
5
  s.name = 'charisma'
6
6
  s.version = Charisma::VERSION
7
7
  s.platform = Gem::Platform::RUBY
8
- s.date = "2011-07-05"
8
+ s.date = "2011-07-06"
9
9
  s.authors = ['Andy Rossmeissl', 'Seamus Abshere']
10
10
  s.email = 'andy@rossmeissl.net'
11
11
  s.homepage = 'http://github.com/brighterplanet/charisma'
@@ -34,5 +34,18 @@ module Charisma
34
34
  @accessor = options[:display_with]
35
35
  @measurement = options[:measures]
36
36
  end
37
+
38
+ # The subclass of <tt>Charisma::Measurement</tt> with which this curation's characteristic is measured.
39
+ # @return [Class]
40
+ def measurement_class
41
+ case measurement
42
+ when ::Class
43
+ measurement
44
+ when ::Symbol
45
+ "::Charisma::Measurement::#{measurement.to_s.camelize}".constantize
46
+ else
47
+ raise InvalidMeasurementError
48
+ end
49
+ end
37
50
  end
38
51
  end
@@ -29,7 +29,9 @@ module Charisma
29
29
  def_delegators :render, :to_s
30
30
 
31
31
  def ==(other)
32
- self.value == other.value
32
+ a = self.value
33
+ b = other.respond_to?(:value) ? other.value : other
34
+ a == b
33
35
  end
34
36
 
35
37
  # An inspection method for more readable IRB sessions and logs.
@@ -86,20 +88,7 @@ module Charisma
86
88
 
87
89
  # Render the value using its specified measurement.
88
90
  def defer_to_measurement
89
- measurement_class.new(value)
90
- end
91
-
92
- # The subclass of <tt>Charisma::Measurement</tt> with which this curation's characteristic is measured.
93
- # @return [Class]
94
- def measurement_class
95
- case characteristic.measurement
96
- when ::Class
97
- characteristic.measurement
98
- when ::Symbol
99
- "::Charisma::Measurement::#{characteristic.measurement.to_s.camelize}".constantize
100
- else
101
- raise InvalidMeasurementError
102
- end
91
+ characteristic.measurement_class.new(value)
103
92
  end
104
93
 
105
94
  # Render the value using its <tt>#as_characteristic</tt> method.
@@ -1,4 +1,4 @@
1
1
  module Charisma
2
2
  # Charisma's version
3
- VERSION = "0.3.1"
3
+ VERSION = "0.3.2"
4
4
  end
@@ -95,4 +95,8 @@ class TestCharisma < Test::Unit::TestCase
95
95
  g.characteristics[:name] = g.characteristics[:make]
96
96
  assert_equal 'Geo', g.characteristics[:name].to_s
97
97
  end
98
+ def test_019_compare_fixnum
99
+ amaroq = Spaceship.new :window_count => 8
100
+ assert(amaroq.characteristics == { :window_count => 8 })
101
+ end
98
102
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: charisma
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2011-07-05 00:00:00.000000000Z
13
+ date: 2011-07-06 00:00:00.000000000Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
17
- requirement: &2155844680 !ruby/object:Gem::Requirement
17
+ requirement: &2154378400 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *2155844680
25
+ version_requirements: *2154378400
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: blockenspiel
28
- requirement: &2155844160 !ruby/object:Gem::Requirement
28
+ requirement: &2154377600 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *2155844160
36
+ version_requirements: *2154377600
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: conversions
39
- requirement: &2155843680 !ruby/object:Gem::Requirement
39
+ requirement: &2154376900 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: '0'
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *2155843680
47
+ version_requirements: *2154376900
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: bundler
50
- requirement: &2155843140 !ruby/object:Gem::Requirement
50
+ requirement: &2154376460 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: '0'
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *2155843140
58
+ version_requirements: *2154376460
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: bueller
61
- requirement: &2155842600 !ruby/object:Gem::Requirement
61
+ requirement: &2154376040 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ! '>='
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: '0'
67
67
  type: :development
68
68
  prerelease: false
69
- version_requirements: *2155842600
69
+ version_requirements: *2154376040
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: rake
72
- requirement: &2155835100 !ruby/object:Gem::Requirement
72
+ requirement: &2154375600 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ! '>='
@@ -77,10 +77,10 @@ dependencies:
77
77
  version: '0'
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *2155835100
80
+ version_requirements: *2154375600
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: rcov
83
- requirement: &2155834680 !ruby/object:Gem::Requirement
83
+ requirement: &2154375180 !ruby/object:Gem::Requirement
84
84
  none: false
85
85
  requirements:
86
86
  - - ! '>='
@@ -88,10 +88,10 @@ dependencies:
88
88
  version: '0'
89
89
  type: :development
90
90
  prerelease: false
91
- version_requirements: *2155834680
91
+ version_requirements: *2154375180
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: supermodel
94
- requirement: &2155834260 !ruby/object:Gem::Requirement
94
+ requirement: &2154374740 !ruby/object:Gem::Requirement
95
95
  none: false
96
96
  requirements:
97
97
  - - ! '>='
@@ -99,7 +99,7 @@ dependencies:
99
99
  version: '0'
100
100
  type: :development
101
101
  prerelease: false
102
- version_requirements: *2155834260
102
+ version_requirements: *2154374740
103
103
  description: Define strategies for accessing and displaying a subset of your classes'
104
104
  attributes
105
105
  email: andy@rossmeissl.net
@@ -146,7 +146,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
146
146
  version: '0'
147
147
  segments:
148
148
  - 0
149
- hash: 2768945876583811928
149
+ hash: -2414637371029360902
150
150
  required_rubygems_version: !ruby/object:Gem::Requirement
151
151
  none: false
152
152
  requirements: