public void Constructor_NoEntryInsertion_WritesNothing() { using MemoryStream archiveStream = new MemoryStream(); TarWriter writer = new TarWriter(archiveStream, leaveOpen: true); writer.Dispose(); // No entries inserted, should write no empty records Assert.Equal(0, archiveStream.Length); }
public void ThrowIf_AddFile_AfterDispose() { using MemoryStream archiveStream = new MemoryStream(); TarWriter writer = new TarWriter(archiveStream); writer.Dispose(); Assert.Throws <ObjectDisposedException>(() => writer.WriteEntry("fileName", "entryName")); }
public void WriteEntry_AfterDispose_Throws() { using MemoryStream archiveStream = new MemoryStream(); TarWriter writer = new TarWriter(archiveStream); writer.Dispose(); PaxTarEntry entry = new PaxTarEntry(TarEntryType.RegularFile, InitialEntryName); Assert.Throws <ObjectDisposedException>(() => writer.WriteEntry(entry)); }
public void Constructors_LeaveOpen() { using MemoryStream archiveStream = new MemoryStream(); TarWriter writer1 = new TarWriter(archiveStream, leaveOpen: true); writer1.Dispose(); archiveStream.WriteByte(0); // Should succeed because stream was not closed TarWriter writer2 = new TarWriter(archiveStream, leaveOpen: false); writer2.Dispose(); Assert.Throws <ObjectDisposedException>(() => archiveStream.WriteByte(0)); // Should fail because stream was closed }
public void Dispose() { writer.Dispose(); }