public void ZipFile_ReleasesLockOnZipFile() { var fixture = new Fixture(); string sourceFilePath = Path.GetTempFileName(); string zipFilePath = Path.ChangeExtension(sourceFilePath, ".zip"); File.WriteAllText(sourceFilePath, fixture.Create<string>()); try { var sut = new Zipper(new Mock<ILog>().Object); sut.ZipFile(sourceFilePath, zipFilePath); File.Delete(zipFilePath); } finally { try { File.Delete(sourceFilePath); } catch {} try { File.Delete(zipFilePath); } catch {} } }