has_inherited 2.0.1 → 2.1.0

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/.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
-