diff options
author | Claire McQuin <clairemcquin@d-69-91-153-195.dhcp4.washington.edu> | 2014-01-15 14:11:07 -0800 |
---|---|---|
committer | Claire McQuin <clairemcquin@d-69-91-153-195.dhcp4.washington.edu> | 2014-01-15 14:11:07 -0800 |
commit | 3e7b1381479476cfa4884e72298ab602d430f34f (patch) | |
tree | 4058ce6ff72af54419f44b8f9cbe1cef905ce954 | |
parent | d1041a994b402f828ae1a3ce6633cc0540e25a75 (diff) | |
download | ohai-3e7b1381479476cfa4884e72298ab602d430f34f.tar.gz |
revert provides_map changes, ensure provides and depends only collect unique attributes
-rw-r--r-- | lib/ohai/dsl/plugin/versionvii.rb | 4 | ||||
-rw-r--r-- | lib/ohai/provides_map.rb | 1 | ||||
-rw-r--r-- | spec/unit/dsl/plugin_spec.rb | 12 |
3 files changed, 14 insertions, 3 deletions
diff --git a/lib/ohai/dsl/plugin/versionvii.rb b/lib/ohai/dsl/plugin/versionvii.rb index cf2ecbdb..ee2a6863 100644 --- a/lib/ohai/dsl/plugin/versionvii.rb +++ b/lib/ohai/dsl/plugin/versionvii.rb @@ -56,13 +56,13 @@ module Ohai def self.provides(*attrs) attrs.each do |attr| - provides_attrs << attr + provides_attrs << attr unless provides_attrs.include?(attr) end end def self.depends(*attrs) attrs.each do |attr| - depends_attrs << attr + depends_attrs << attr unless depends_attrs.include?(attr) end end diff --git a/lib/ohai/provides_map.rb b/lib/ohai/provides_map.rb index 804cee6d..c2da2124 100644 --- a/lib/ohai/provides_map.rb +++ b/lib/ohai/provides_map.rb @@ -45,7 +45,6 @@ module Ohai end attrs[:_plugins] ||= [] attrs[:_plugins] << plugin - attrs[:_plugins].uniq! end end diff --git a/spec/unit/dsl/plugin_spec.rb b/spec/unit/dsl/plugin_spec.rb index e0a2f233..61283ac0 100644 --- a/spec/unit/dsl/plugin_spec.rb +++ b/spec/unit/dsl/plugin_spec.rb @@ -143,6 +143,12 @@ describe Ohai::DSL::Plugin::VersionVII do plugin = Ohai.plugin(@name) { provides("two", "three") } plugin.provides_attrs.should eql(["one", "two", "three"]) end + + it "should collect unique attributes" do + plugin = Ohai.plugin(@name) { provides("one") } + plugin = Ohai.plugin(@name) { provides("one", "two") } + plugin.provides_attrs.should eql(["one", "two"]) + end end describe "#depends" do @@ -170,6 +176,12 @@ describe Ohai::DSL::Plugin::VersionVII do plugin = Ohai.plugin(@name) { depends("two", "three") } plugin.depends_attrs.should eql(["one", "two", "three"]) end + + it "should collect unique attributes" do + plugin = Ohai.plugin(@name) { depends("one") } + plugin = Ohai.plugin(@name) { depends("one", "two") } + plugin.depends_attrs.should eql(["one", "two"]) + end end describe "#collect_data" do |