From d489a2b9e2806beefd41627adf7e20d23b0924d6 Mon Sep 17 00:00:00 2001 From: Luke Kanies Date: Sun, 17 May 2009 17:10:16 -0500 Subject: Adding modulepath caching to the Autoloader There's more caching to add, but this simplifies the interface to the list of paths and then caches that list so we aren't constantly searching the filesystem. Signed-off-by: Luke Kanies --- test/util/autoload.rb | 31 +------------------------------ 1 file changed, 1 insertion(+), 30 deletions(-) (limited to 'test/util/autoload.rb') diff --git a/test/util/autoload.rb b/test/util/autoload.rb index de503ab99..6aaf32995 100755 --- a/test/util/autoload.rb +++ b/test/util/autoload.rb @@ -93,16 +93,6 @@ TestAutoload.newthing(:#{name.to_s}) end end - # Make sure that autoload dynamically modifies $: with the libdir as - # appropriate. - def test_searchpath - dir = Puppet[:libdir] - - loader = Puppet::Util::Autoload.new(self, "testing") - - assert(loader.send(:searchpath).include?(dir), "searchpath does not include the libdir") - end - # This tests #1027, which was caused by using the unqualified # path for requires, which was initially done so that the kernel # would keep track of which files got loaded. @@ -112,7 +102,7 @@ TestAutoload.newthing(:#{name.to_s}) basedir = "/some/dir" dir = File.join(basedir, loadname) - loader.expects(:eachdir).yields(dir) + loader.expects(:searchpath).returns(dir) subname = "instance" @@ -123,23 +113,4 @@ TestAutoload.newthing(:#{name.to_s}) Kernel.expects(:require).with(file) loader.loadall end - - def test_searchpath_includes_plugin_dirs - moddir = "/what/ever" - libdir = "/other/dir" - Puppet.settings.stubs(:value).with(:modulepath).returns(moddir) - Puppet.settings.stubs(:value).with(:libdir).returns(libdir) - - loadname = "testing" - loader = Puppet::Util::Autoload.new(self.class, loadname) - - # Currently, include both plugins and libs. - paths = %w{plugins lib}.inject({}) { |hash, d| hash[d] = File.join(moddir, "testing", d); FileTest.stubs(:directory?).with(hash[d]).returns(true); hash } - Dir.expects(:glob).with("#{moddir}/*/{plugins,lib}").returns(paths.values) - - searchpath = loader.searchpath - paths.each do |dir, path| - assert(searchpath.include?(path), "search path did not include path for %s" % dir) - end - end end -- cgit