summaryrefslogtreecommitdiff
path: root/chef/spec/unit/checksum_cache_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'chef/spec/unit/checksum_cache_spec.rb')
-rw-r--r--chef/spec/unit/checksum_cache_spec.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/chef/spec/unit/checksum_cache_spec.rb b/chef/spec/unit/checksum_cache_spec.rb
index 1896fedfa2..e86b52d195 100644
--- a/chef/spec/unit/checksum_cache_spec.rb
+++ b/chef/spec/unit/checksum_cache_spec.rb
@@ -193,6 +193,14 @@ describe Chef::ChecksumCache do
Chef::ChecksumCache.cleanup_checksum_cache
end
+
+ it "cleans all 0byte checksum files when it encounters a Marshal error" do
+ @cache.moneta.stub!(:fetch).and_raise(ArgumentError)
+ # This cache file is 0 bytes, raises an argument error when
+ # attempting to Marshal.load
+ File.should_receive(:unlink).with(File.join(CHEF_SPEC_DATA, "checksum_cache", "chef-file--tmp-chef-rendered-template20100929-10863-6m8zdk-0"))
+ @cache.lookup_checksum("chef-file--tmp-chef-rendered-template20100929-10863-6m8zdk-0", "foo")
+ end
end
end