Esempio n. 1
0
        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));
        }
Esempio n. 4
0
        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
        }
Esempio n. 5
0
 public void Dispose()
 {
     writer.Dispose();
 }