public void MemoryStreamEncode()
        {
            // Arrange
            var testString  = "This is a test";
            var streamDummy = new MemoryStreamDummy(testString);

            // Act
            var entry = EntryConvert.EncodeObject(streamDummy);

            // Assert
            Assert.AreEqual(1, entry.SubEntries.Count);
            Assert.AreEqual(EntryValueType.Stream, entry.SubEntries[0].Value.Type);
            Assert.AreEqual("VGhpcyBpcyBhIHRlc3Q=", entry.SubEntries[0].Value.Current);
        }
        public void MemoryStreamDecode()
        {
            // Arrange
            var testString            = "This is a test";
            var streamDummy           = new MemoryStreamDummy(testString);
            var targetStreamDummy     = new MemoryStreamDummy("");
            var streamInstanceToCheck = targetStreamDummy.MemoryStream;
            var entry = EntryConvert.EncodeObject(streamDummy);

            // Act
            EntryConvert.UpdateInstance(targetStreamDummy, entry);

            // Assert
            var stringValue = Encoding.UTF8.GetString(targetStreamDummy.MemoryStream.ToArray());

            Assert.AreEqual(testString, stringValue);
            Assert.AreNotSame(streamInstanceToCheck, targetStreamDummy.MemoryStream);
        }
        public void MemoryStreamDecodeReuseCurrentStreamInitSizeIsGreaterThanNewData()
        {
            // Arrange
            var testString            = "A test";
            var dummyString           = "12345678912345";
            var streamDummy           = new MemoryStreamDummy(testString);
            var targetStreamDummy     = new MemoryStreamDummy(dummyString);
            var streamInstanceToCheck = targetStreamDummy.MemoryStream;
            var entry = EntryConvert.EncodeObject(streamDummy);

            // Act
            EntryConvert.UpdateInstance(targetStreamDummy, entry);

            // Assert
            var stringValue = Encoding.UTF8.GetString(targetStreamDummy.MemoryStream.ToArray());

            Assert.AreEqual(testString, stringValue);
            Assert.AreSame(streamInstanceToCheck, targetStreamDummy.MemoryStream);
        }