has_inherited 2.0.1 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ rvm:
2
+ - 1.9.2
3
+ - 1.8.7
4
+ - ree
5
+ - rbx
data/Gemfile ADDED
@@ -0,0 +1,6 @@
1
+ source :rubygems
2
+
3
+ gem "jeweler"
4
+ gem "bacon", "~> 1.1.0"
5
+ gem "activerecord"
6
+ gem "sqlite3"
data/Rakefile CHANGED
@@ -38,7 +38,6 @@ rescue LoadError
38
38
  end
39
39
  end
40
40
 
41
- task :spec => :check_dependencies
42
41
 
43
42
  task :default => :spec
44
43
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.0.1
1
+ 2.1.0
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{has_inherited}
8
- s.version = "2.0.1"
8
+ s.version = "2.1.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Mark Turner", "Steve Burkett"]
12
- s.date = %q{2011-07-01}
11
+ s.authors = [%q{Mark Turner}, %q{Steve Burkett}]
12
+ s.date = %q{2011-10-04}
13
13
  s.description = %q{The intention of this library is to make it easy to inherit particular variables between models in rails apps. We start with a parent model that will function as a pseudo-polymorphic association for children objects.}
14
14
  s.email = %q{mark@amerine.net}
15
15
  s.extra_rdoc_files = [
@@ -18,6 +18,8 @@ Gem::Specification.new do |s|
18
18
  ]
19
19
  s.files = [
20
20
  ".document",
21
+ ".travis.yml",
22
+ "Gemfile",
21
23
  "LICENSE",
22
24
  "README.rdoc",
23
25
  "Rakefile",
@@ -28,19 +30,31 @@ Gem::Specification.new do |s|
28
30
  "spec/spec_helper.rb"
29
31
  ]
30
32
  s.homepage = %q{http://github.com/amerine/has_inherited}
31
- s.require_paths = ["lib"]
32
- s.rubygems_version = %q{1.6.2}
33
+ s.require_paths = [%q{lib}]
34
+ s.rubygems_version = %q{1.8.6}
33
35
  s.summary = %q{Easily share variables between Rails models with inheritance.}
34
36
 
35
37
  if s.respond_to? :specification_version then
36
38
  s.specification_version = 3
37
39
 
38
40
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
41
+ s.add_runtime_dependency(%q<jeweler>, [">= 0"])
42
+ s.add_runtime_dependency(%q<bacon>, ["~> 1.1.0"])
43
+ s.add_runtime_dependency(%q<activerecord>, [">= 0"])
44
+ s.add_runtime_dependency(%q<sqlite3>, [">= 0"])
39
45
  s.add_development_dependency(%q<bacon>, [">= 0"])
40
46
  else
47
+ s.add_dependency(%q<jeweler>, [">= 0"])
48
+ s.add_dependency(%q<bacon>, ["~> 1.1.0"])
49
+ s.add_dependency(%q<activerecord>, [">= 0"])
50
+ s.add_dependency(%q<sqlite3>, [">= 0"])
41
51
  s.add_dependency(%q<bacon>, [">= 0"])
42
52
  end
43
53
  else
54
+ s.add_dependency(%q<jeweler>, [">= 0"])
55
+ s.add_dependency(%q<bacon>, ["~> 1.1.0"])
56
+ s.add_dependency(%q<activerecord>, [">= 0"])
57
+ s.add_dependency(%q<sqlite3>, [">= 0"])
44
58
  s.add_dependency(%q<bacon>, [">= 0"])
45
59
  end
46
60
  end
data/lib/has_inherited.rb CHANGED
@@ -120,6 +120,8 @@ module HasInherited
120
120
  name = symbol.to_s
121
121
  if name =~ /=$/
122
122
  self[name.gsub(/=$/, '')] = args.first
123
+ elsif name =~ /\?$/
124
+ !!self[name.gsub /\?$/, '']
123
125
  else
124
126
  self[name]
125
127
  end
@@ -104,6 +104,23 @@ describe "HasInherited" do
104
104
  client.seo.title.should.equal "Client Title"
105
105
  end
106
106
 
107
+ it "should be inquireable" do
108
+ industry = Industry.create
109
+ client = industry.clients.create
110
+ client.seo.value = "Some Value"
111
+ client.seo.value = "Some Value"
112
+ client.seo.value?.should.equal true
113
+ client.seo.bad_value?.should.equal false
114
+ end
115
+
116
+ it "should be inquireable through inheritance " do
117
+ industry = Industry.create
118
+ industry.seo.custom_value = "Custom Value"
119
+ client = industry.clients.create
120
+ client.seo.custom_value?.should.equal true
121
+ client.seo.bad_value?.should.equal false
122
+ end
123
+
107
124
  it "Should allow you to see all the custom values" do
108
125
  Seo.global.title = "SEO Title"
109
126
  Seo.global.keywords = "Awesome, Words, Are, Awesome"
metadata CHANGED
@@ -1,49 +1,85 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: has_inherited
3
- version: !ruby/object:Gem::Version
4
- hash: 13
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.1.0
5
5
  prerelease:
6
- segments:
7
- - 2
8
- - 0
9
- - 1
10
- version: 2.0.1
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Mark Turner
14
9
  - Steve Burkett
15
10
  autorequire:
16
11
  bindir: bin
17
12
  cert_chain: []
18
-
19
- date: 2011-07-01 00:00:00 -07:00
20
- default_executable:
21
- dependencies:
22
- - !ruby/object:Gem::Dependency
13
+ date: 2011-10-04 00:00:00.000000000Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: jeweler
17
+ requirement: &70173894336640 !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
22
+ version: '0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: *70173894336640
26
+ - !ruby/object:Gem::Dependency
23
27
  name: bacon
28
+ requirement: &70173894462780 !ruby/object:Gem::Requirement
29
+ none: false
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 1.1.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: *70173894462780
37
+ - !ruby/object:Gem::Dependency
38
+ name: activerecord
39
+ requirement: &70173894766280 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ! '>='
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
45
+ type: :runtime
24
46
  prerelease: false
25
- requirement: &id001 !ruby/object:Gem::Requirement
47
+ version_requirements: *70173894766280
48
+ - !ruby/object:Gem::Dependency
49
+ name: sqlite3
50
+ requirement: &70173895111240 !ruby/object:Gem::Requirement
26
51
  none: false
27
- requirements:
28
- - - ">="
29
- - !ruby/object:Gem::Version
30
- hash: 3
31
- segments:
32
- - 0
33
- version: "0"
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ type: :runtime
57
+ prerelease: false
58
+ version_requirements: *70173895111240
59
+ - !ruby/object:Gem::Dependency
60
+ name: bacon
61
+ requirement: &70173895471940 !ruby/object:Gem::Requirement
62
+ none: false
63
+ requirements:
64
+ - - ! '>='
65
+ - !ruby/object:Gem::Version
66
+ version: '0'
34
67
  type: :development
35
- version_requirements: *id001
36
- description: The intention of this library is to make it easy to inherit particular variables between models in rails apps. We start with a parent model that will function as a pseudo-polymorphic association for children objects.
68
+ prerelease: false
69
+ version_requirements: *70173895471940
70
+ description: The intention of this library is to make it easy to inherit particular
71
+ variables between models in rails apps. We start with a parent model that will function
72
+ as a pseudo-polymorphic association for children objects.
37
73
  email: mark@amerine.net
38
74
  executables: []
39
-
40
75
  extensions: []
41
-
42
- extra_rdoc_files:
76
+ extra_rdoc_files:
43
77
  - LICENSE
44
78
  - README.rdoc
45
- files:
79
+ files:
46
80
  - .document
81
+ - .travis.yml
82
+ - Gemfile
47
83
  - LICENSE
48
84
  - README.rdoc
49
85
  - Rakefile
@@ -52,39 +88,28 @@ files:
52
88
  - lib/has_inherited.rb
53
89
  - spec/has_inherited_spec.rb
54
90
  - spec/spec_helper.rb
55
- has_rdoc: true
56
91
  homepage: http://github.com/amerine/has_inherited
57
92
  licenses: []
58
-
59
93
  post_install_message:
60
94
  rdoc_options: []
61
-
62
- require_paths:
95
+ require_paths:
63
96
  - lib
64
- required_ruby_version: !ruby/object:Gem::Requirement
97
+ required_ruby_version: !ruby/object:Gem::Requirement
65
98
  none: false
66
- requirements:
67
- - - ">="
68
- - !ruby/object:Gem::Version
69
- hash: 3
70
- segments:
71
- - 0
72
- version: "0"
73
- required_rubygems_version: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ! '>='
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ required_rubygems_version: !ruby/object:Gem::Requirement
74
104
  none: false
75
- requirements:
76
- - - ">="
77
- - !ruby/object:Gem::Version
78
- hash: 3
79
- segments:
80
- - 0
81
- version: "0"
105
+ requirements:
106
+ - - ! '>='
107
+ - !ruby/object:Gem::Version
108
+ version: '0'
82
109
  requirements: []
83
-
84
110
  rubyforge_project:
85
- rubygems_version: 1.6.2
111
+ rubygems_version: 1.8.6
86
112
  signing_key:
87
113
  specification_version: 3
88
114
  summary: Easily share variables between Rails models with inheritance.
89
115
  test_files: []
90
-