diff options
-rw-r--r-- | lib/puppet/metatype/providers.rb | 7 | ||||
-rw-r--r-- | lib/puppet/provider/nameservice/netinfo.rb | 2 | ||||
-rwxr-xr-x | test/ral/manager/provider.rb | 1 | ||||
-rwxr-xr-x | test/ral/providers/cron/crontab.rb | 11 | ||||
-rwxr-xr-x | test/ral/providers/host/netinfo.rb | 9 |
5 files changed, 18 insertions, 12 deletions
diff --git a/lib/puppet/metatype/providers.rb b/lib/puppet/metatype/providers.rb index 72459d3af..e33657a4c 100644 --- a/lib/puppet/metatype/providers.rb +++ b/lib/puppet/metatype/providers.rb @@ -200,7 +200,12 @@ class Puppet::Type provider = provider.intern end @resource.provider = provider - provider + + if provider.is_a?(Puppet::Provider) + provider.class.name + else + provider + end end end.parenttype = self end diff --git a/lib/puppet/provider/nameservice/netinfo.rb b/lib/puppet/provider/nameservice/netinfo.rb index 0323807e8..f03e67445 100644 --- a/lib/puppet/provider/nameservice/netinfo.rb +++ b/lib/puppet/provider/nameservice/netinfo.rb @@ -192,7 +192,7 @@ class NetInfo < Puppet::Provider::NameService # Get a report for a single resource, not the whole table def single_report(*properties) - self.class.report(*properties).find do |hash| hash[:name] == @resource[:name] end + self.class.report(*properties).find do |hash| hash[:name] == self.name end end def setuserlist(group, list) diff --git a/test/ral/manager/provider.rb b/test/ral/manager/provider.rb index a9748e12a..1fcb5efbc 100755 --- a/test/ral/manager/provider.rb +++ b/test/ral/manager/provider.rb @@ -66,6 +66,7 @@ class TestTypeProviders < Test::Unit::TestCase end assert_equal(provinst, resource.provider, "Did not retain provider instance") + assert_equal(provider.name, resource[:provider], "Provider value was set to the provider instead of its name") # Now make sure unsuitable provider instances still throw errors provider = @type.provide(:badprov) do diff --git a/test/ral/providers/cron/crontab.rb b/test/ral/providers/cron/crontab.rb index df70cef36..53327be9a 100755 --- a/test/ral/providers/cron/crontab.rb +++ b/test/ral/providers/cron/crontab.rb @@ -58,6 +58,7 @@ class TestCronParsedProvider < Test::Unit::TestCase files = Dir.glob("%s/crontab.*" % crondir) setme + @provider.default_target = @me target = @provider.target_object(@me) files.each do |file| str = args = nil @@ -82,7 +83,7 @@ class TestCronParsedProvider < Test::Unit::TestCase end target.write(str) assert_nothing_raised("could not parse %s" % file) do - @provider.prefetch_target(@me) + @provider.prefetch end records = @provider.send(:instance_variable_get, "@records") @@ -150,7 +151,7 @@ class TestCronParsedProvider < Test::Unit::TestCase target = @provider.target_object(user) target.write(str) assert_nothing_raised { - @provider.prefetch_target(user) + @provider.prefetch } assert_nothing_raised { @@ -236,7 +237,7 @@ class TestCronParsedProvider < Test::Unit::TestCase assert_equal(str, target.read, "Did not write correctly") assert_nothing_raised("Could not prefetch with %s" % str.inspect) do - @provider.prefetch_target(@me) + @provider.prefetch end assert_nothing_raised("Could not flush with %s" % str.inspect) do @provider.flush_target(@me) @@ -284,7 +285,7 @@ class TestCronParsedProvider < Test::Unit::TestCase target.write(text) assert_nothing_raised("Could not parse %s" % file) do - @provider.prefetch_target(@me) + @provider.prefetch end # mark the provider modified @provider.modified(@me) @@ -324,7 +325,7 @@ class TestCronParsedProvider < Test::Unit::TestCase assert_equal(str, target.read, "Did not write correctly") assert_nothing_raised("Could not prefetch with %s" % str.inspect) do - @provider.prefetch_target(@me) + @provider.prefetch end records = @provider.send(:instance_variable_get, "@records") records.each do |r| diff --git a/test/ral/providers/host/netinfo.rb b/test/ral/providers/host/netinfo.rb index 8c9e8bdb4..674253d3c 100755 --- a/test/ral/providers/host/netinfo.rb +++ b/test/ral/providers/host/netinfo.rb @@ -20,17 +20,16 @@ class TestNetinfoHostProvider < Test::Unit::TestCase def test_list list = nil assert_nothing_raised do - list = @provider.list + list = @provider.instances end assert(list.length > 0) - list.each do |obj| - prov = obj.provider - assert_instance_of(@host, obj) + list.each do |prov| + assert_instance_of(@provider, prov) assert(prov.name, "objects do not have names") assert(prov.ip, "Did not get value for device in %s" % prov.ip) end - assert(list.detect { |m| m.provider.name == "localhost"}, "Could not find localhost") + assert(list.detect { |provider| provider.name == "localhost"}, "Could not find localhost") end if Process.uid == 0 |