diff options
| author | Luke Kanies <luke@madstop.com> | 2007-10-03 19:36:35 -0500 |
|---|---|---|
| committer | Luke Kanies <luke@madstop.com> | 2007-10-03 19:36:35 -0500 |
| commit | bb3b3cedf4082dc884e41b864fa755057d20e228 (patch) | |
| tree | 320cbf4056597adf7edb69d0f7442437d729cc77 /test/ral | |
| parent | 782bc4d3b037684f472e1db53c1878390b8c9a32 (diff) | |
I finally tracked down the problem that was causing providers
to sometimes suddenly disappear and thus tests to fail --
Kernel.require was not loading the normal ruby path (e.g.,
'puppet/type/cron'), so if someone else loaded that then
it would replace the in-memory type with a new one, but that
new one couldn't load its own providers, because the Kernel
would ignore the providers, thinking they were already loaded.
This doesn't fix all of the autoloading problems, but at least
we won't suddenly break a ton of tests.
Diffstat (limited to 'test/ral')
| -rwxr-xr-x | test/ral/providers/cron/crontab.rb | 17 | ||||
| -rwxr-xr-x | test/ral/types/cron.rb | 6 |
2 files changed, 9 insertions, 14 deletions
diff --git a/test/ral/providers/cron/crontab.rb b/test/ral/providers/cron/crontab.rb index 7df7bab3d..d32a9527a 100755 --- a/test/ral/providers/cron/crontab.rb +++ b/test/ral/providers/cron/crontab.rb @@ -52,7 +52,6 @@ class TestCronParsedProvider < Test::Unit::TestCase def teardown Puppet::Util::FileType.filetype(:ram).clear - @provider.filetype = @oldfiletype @provider.clear super end @@ -211,7 +210,7 @@ class TestCronParsedProvider < Test::Unit::TestCase # Take our sample files, and make sure we can entirely parse them, # then that we can generate them again and we get the same data. def test_parse_and_generate_sample_files - @provider.filetype = :ram + @provider.stubs(:filetype).returns(Puppet::Util::FileType.filetype(:ram)) crondir = datadir(File.join(%w{providers cron})) files = Dir.glob("%s/crontab.*" % crondir) @@ -306,7 +305,7 @@ class TestCronParsedProvider < Test::Unit::TestCase str = "# this is a comment\n#and another comment\n" user = "fakeuser" records = nil - target = @provider.filetype = :ram + @provider.stubs(:filetype).returns(Puppet::Util::FileType.filetype(:ram)) target = @provider.target_object(user) target.write(str) assert_nothing_raised { @@ -320,7 +319,7 @@ class TestCronParsedProvider < Test::Unit::TestCase end def test_simpleparsing - @provider.filetype = :ram + @provider.stubs(:filetype).returns(Puppet::Util::FileType.filetype(:ram)) text = "5 1,2 * 1 0 /bin/echo funtest" records = nil @@ -376,7 +375,7 @@ class TestCronParsedProvider < Test::Unit::TestCase # Make sure we correctly bidirectionally parse things. def test_records_and_strings - @provider.filetype = :ram + @provider.stubs(:filetype).returns(Puppet::Util::FileType.filetype(:ram)) setme target = @provider.target_object(@me) @@ -426,7 +425,7 @@ class TestCronParsedProvider < Test::Unit::TestCase 0,30 * * 1 * fooness " setme - @provider.filetype = :ram + @provider.stubs(:filetype).returns(Puppet::Util::FileType.filetype(:ram)) you = "you" # Write the same tab to multiple targets @@ -486,7 +485,7 @@ class TestCronParsedProvider < Test::Unit::TestCase def test_data setme - @provider.filetype = :ram + @provider.stubs(:filetype).returns(Puppet::Util::FileType.filetype(:ram)) target = @provider.target_object(@me) fakedata("data/providers/cron/examples").each do |file| text = File.read(file) @@ -518,7 +517,7 @@ class TestCronParsedProvider < Test::Unit::TestCase # Match freebsd's annoying @daily stuff. def test_match_freebsd_special - @provider.filetype = :ram + @provider.stubs(:filetype).returns(Puppet::Util::FileType.filetype(:ram)) setme target = @provider.target_object(@me) @@ -561,7 +560,7 @@ class TestCronParsedProvider < Test::Unit::TestCase # Testing #669. def test_environment_settings - @provider.filetype = :ram + @provider.stubs(:filetype).returns(Puppet::Util::FileType.filetype(:ram)) setme target = @provider.target_object(@me) diff --git a/test/ral/types/cron.rb b/test/ral/types/cron.rb index 1695befac..519ff1d28 100755 --- a/test/ral/types/cron.rb +++ b/test/ral/types/cron.rb @@ -17,8 +17,7 @@ class TestCron < Test::Unit::TestCase @crontype = Puppet::Type.type(:cron) @provider = @crontype.defaultprovider if @provider.respond_to?(:filetype=) - @oldfiletype = @provider.filetype - @provider.filetype = :ram + @provider.stubs(:filetype).returns(Puppet::Util::FileType.filetype(:ram)) end @crontype = Puppet::Type.type(:cron) end @@ -26,9 +25,6 @@ class TestCron < Test::Unit::TestCase def teardown super @crontype.defaultprovider = nil - if defined? @oldfiletype - @provider.filetype = @oldfiletype - end Puppet::Util::FileType.filetype(:ram).clear end |
