Example #1
0
        public async Task Dispose_GetStreamForArchivingAsync_ThrowsObjectDisposedException()
        {
            var expectedBytes = new byte[] { 0x30, 0x60 };
            var archiveMock   = new Mock <IMS2Archive>(MockBehavior.Strict);
            var stream        = new MemoryStream(expectedBytes);
            var info          = new MS2FileInfo("1", "testfile");
            var header        = new MS2FileHeader(expectedBytes.Length, 1, 0);
            var file          = new MS2File(archiveMock.Object, stream, info, header, false);

            file.Dispose();

            await file.GetStreamForArchivingAsync();
        }
Example #2
0
        public async Task GetStreamForArchivingAsync_StreamEncryptedTrueAndCompressionZlib_EqualsInput()
        {
            string        input              = "testdatainput";
            string        expected           = input;
            MS2CryptoMode cryptoMode         = (MS2CryptoMode)12345;
            var           sizeMock           = CreateSizeMock(10, 10, 10);
            var           expectedSize       = sizeMock.Object;
            IMS2ArchiveCryptoRepository repo = new FakeCryptoRepository(cryptoMode, EncodingTest, input, expected, sizeMock.Object);

            using MemoryStream inputStream = StringToStream(input);
            var archiveMock = CreateArchiveMock(repo);
            var infoMock    = CreateFileInfoMock("1", "testfile");
            var headerMock  = CreateFileHeaderMock(sizeMock, 1, 0, CompressionType.Zlib);
            var file        = new MS2File(archiveMock.Object, inputStream, infoMock.Object, headerMock.Object, true);

            var(actualStream, actualSize) = await file.GetStreamForArchivingAsync();

            string actual = await StreamToString(actualStream);

            Assert.AreEqual(expected, actual);
            Assert.AreEqual(expectedSize.EncodedSize, actualSize.EncodedSize);
            Assert.AreEqual(expectedSize.CompressedSize, actualSize.CompressedSize);
            Assert.AreEqual(expectedSize.Size, actualSize.Size);
        }