pet 0.0.13 → 0.0.14
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/pet.rb +2 -9
- data/lib/pet/fallback.rb +13 -0
- data/lib/pet/relationships.rb +11 -0
- data/lib/pet/summarization.rb +1 -1
- data/lib/test_support/pet_record.rb +0 -24
- metadata +6 -4
data/lib/pet.rb
CHANGED
@@ -3,15 +3,8 @@ require 'emitter'
|
|
3
3
|
module BrighterPlanet
|
4
4
|
module Pet
|
5
5
|
extend BrighterPlanet::Emitter
|
6
|
-
|
7
|
-
|
8
|
-
if Object.const_defined? 'Pet'
|
9
|
-
::Pet
|
10
|
-
elsif Object.const_defined? 'PetRecord'
|
11
|
-
PetRecord
|
12
|
-
else
|
13
|
-
raise 'There is no pet model'
|
14
|
-
end
|
6
|
+
def weight_range
|
7
|
+
species.minimum_weight..species.maximum_weight if species
|
15
8
|
end
|
16
9
|
end
|
17
10
|
end
|
data/lib/pet/fallback.rb
ADDED
data/lib/pet/summarization.rb
CHANGED
@@ -3,7 +3,7 @@ module BrighterPlanet
|
|
3
3
|
module Summarization
|
4
4
|
def self.included(base)
|
5
5
|
base.summarize do |has|
|
6
|
-
has.adjective lambda { |pet| "#{pet.
|
6
|
+
has.adjective lambda { |pet| "#{pet.weight.convert(:kilograms, :pounds).round(1)}-pound"}, :if => :weight
|
7
7
|
has.adjective [:gender, :name], :if => :gender
|
8
8
|
has.adjective [:breed, :name], :if => :breed
|
9
9
|
has.identity [:species, :name], :if => :species
|
@@ -3,28 +3,4 @@ require 'pet'
|
|
3
3
|
class PetRecord < ActiveRecord::Base
|
4
4
|
include Sniff::Emitter
|
5
5
|
include BrighterPlanet::Pet
|
6
|
-
|
7
|
-
belongs_to :species
|
8
|
-
belongs_to :breed
|
9
|
-
belongs_to :gender
|
10
|
-
|
11
|
-
conversion_accessor :weight, :external => :pounds, :internal => :kilograms
|
12
|
-
|
13
|
-
def scope_conditions_for(assoc)
|
14
|
-
if assoc == :breeds and species
|
15
|
-
{ :species_id => species.id }
|
16
|
-
else
|
17
|
-
{}
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
def weight_range
|
22
|
-
species.minimum_weight..species.maximum_weight if species
|
23
|
-
end
|
24
|
-
|
25
|
-
class << self
|
26
|
-
def fallback
|
27
|
-
Species.fallback
|
28
|
-
end
|
29
|
-
end
|
30
6
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 3
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 14
|
10
|
+
version: 0.0.14
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Andy Rossmeissl
|
@@ -19,7 +19,7 @@ autorequire:
|
|
19
19
|
bindir: bin
|
20
20
|
cert_chain: []
|
21
21
|
|
22
|
-
date: 2010-12-
|
22
|
+
date: 2010-12-07 00:00:00 -06:00
|
23
23
|
default_executable:
|
24
24
|
dependencies:
|
25
25
|
- !ruby/object:Gem::Dependency
|
@@ -171,6 +171,8 @@ files:
|
|
171
171
|
- lib/pet/carbon_model.rb
|
172
172
|
- lib/pet/characterization.rb
|
173
173
|
- lib/pet/data.rb
|
174
|
+
- lib/pet/fallback.rb
|
175
|
+
- lib/pet/relationships.rb
|
174
176
|
- lib/pet/summarization.rb
|
175
177
|
- lib/test_support/pet_record.rb
|
176
178
|
- features/support/env.rb
|