Exemple #1
0
        public static string SerializeToString([NotNull] this object obj, [NotNull] IFormatter formatter)
        {
            StringBuilder s = new StringBuilder();

            s.AppendSerialization(obj, formatter);
            return(s.ToString());
        }
Exemple #2
0
        public static StringBuilder SerializeToStringBuilder <T>(
            [NotNull] this IEnumerable <T> enumerable,
            [NotNull] IFormatter formatter)
        {
            StringBuilder s = new StringBuilder();

            s.AppendSerialization(enumerable.ToList(), formatter);
            return(s);
        }
Exemple #3
0
        public static StringBuilder SerializeToStringBuilder <T>(
            [NotNull] this IEnumerable <T> enumerable,
            [CanBeNull] object context          = null,
            StreamingContextStates contextState = StreamingContextStates.Other)
        {
            StringBuilder s = new StringBuilder();

            s.AppendSerialization(enumerable.ToList(), GetFormatter(context, contextState));
            return(s);
        }
Exemple #4
0
        public static StringBuilder SerializeToStringBuilder(
            [NotNull] this object obj,
            [CanBeNull] object context          = null,
            StreamingContextStates contextState = StreamingContextStates.Other)
        {
            StringBuilder s = new StringBuilder();

            s.AppendSerialization(obj, GetFormatter(context, contextState));
            return(s);
        }
Exemple #5
0
        public void AppendSerialization_UnicodeStringsInputAsObject_StringBuilderContainsValidBase64()
        {
            StringBuilder stringBuilder = new StringBuilder();

            stringBuilder.AppendSerialization((Object)Random.RandomString());
            String result = stringBuilder.ToString();

            Assert.AreNotEqual("", result);
            Assert.IsTrue(ValidBase64.IsMatch(result));
        }
Exemple #6
0
        public void AppendSerialization_CustomFormatter_SerializeMethodOfFormatterCalledWithObj()
        {
            object            obj           = Random.RandomString();
            Mock <IFormatter> mockFormatter = new Mock <IFormatter>();
            StringBuilder     stringBuilder = new StringBuilder();

            stringBuilder.AppendSerialization(obj, formatter: mockFormatter.Object);
            String result = stringBuilder.ToString();

            mockFormatter.Verify(f => f.Serialize(It.IsAny <Stream>(), obj), Times.Once());
        }
Exemple #7
0
        public void AppendSerialization_NullInput_ThrowsArgumentNullException()
        {
            StringBuilder stringBuilder = new StringBuilder();

            // ReSharper disable AssignNullToNotNullAttribute
            stringBuilder.AppendSerialization(null);
            // ReSharper restore AssignNullToNotNullAttribute
            String result = stringBuilder.ToString();

            Assert.AreEqual("", result);
        }
Exemple #8
0
        public void AppendSerialization_ListOfIntsInput_StringBuilderContainsValidBase64()
        {
            StringBuilder stringBuilder = new StringBuilder();
            List <int>    listOfInts    = Enumerable.Range(Random.Next(1, 1000), Random.Next(10, 1000)).ToList();

            stringBuilder.AppendSerialization(listOfInts);
            String result = stringBuilder.ToString();

            Assert.AreNotEqual("", result);
            Assert.IsTrue(ValidBase64.IsMatch(result));
        }
Exemple #9
0
        public void Deserialize_ResultFromAppendSerialization_ReturnsOriginalObject()
        {
            List <String> source        = GenerateRandomListOfString();
            StringBuilder stringBuilder = new StringBuilder();

            stringBuilder.AppendSerialization(source);
            String serializedString = stringBuilder.ToString();

            List <String> result = serializedString.Deserialize <List <String> >();

            Assert.IsNotNull(result);
            Assert.AreEqual(String.Join(",", source), String.Join(",", result));
        }
Exemple #10
0
        AppendSerialization_CustomFormatterForEnumerable_SerializeMethodOfFormatterCalledWithEnumerableToList()
        {
            String[]             list       = GenerateRandomListOfString().ToArray();
            IEnumerable <String> enumerable = list;

            Mock <IFormatter> mockFormatter = new Mock <IFormatter>();
            StringBuilder     stringBuilder = new StringBuilder();

            stringBuilder.AppendSerialization(enumerable, formatter: mockFormatter.Object);
            String result = stringBuilder.ToString();

            mockFormatter.Verify(f => f.Serialize(It.IsAny <Stream>(), It.IsAny <List <String> >()), Times.Once(),
                                 "The IEnumerable should be converted to a list before being sent to the formatter.");
            mockFormatter.Verify(f => f.Serialize(It.IsAny <Stream>(), list), Times.Once());
        }
        public void Deserialize_ResultFromAppendSerialization_ReturnsOriginalObject()
        {
            List<String> source = GenerateRandomListOfString();
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.AppendSerialization(source);
            String serializedString = stringBuilder.ToString();

            List<String> result = serializedString.Deserialize<List<String>>();
            Assert.IsNotNull(result);
            Assert.AreEqual(String.Join(",", source), String.Join(",", result));
        }
            AppendSerialization_CustomFormatterForEnumerable_SerializeMethodOfFormatterCalledWithEnumerableToList()
        {
            String[] list = GenerateRandomListOfString().ToArray();
            IEnumerable<String> enumerable = list;

            Mock<IFormatter> mockFormatter = new Mock<IFormatter>();
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.AppendSerialization(enumerable, formatter: mockFormatter.Object);
            String result = stringBuilder.ToString();
            mockFormatter.Verify(f => f.Serialize(It.IsAny<Stream>(), It.IsAny<List<String>>()), Times.Once(),
                                 "The IEnumerable should be converted to a list before being sent to the formatter.");
            mockFormatter.Verify(f => f.Serialize(It.IsAny<Stream>(), list), Times.Once());
        }
 public void AppendSerialization_CustomFormatter_SerializeMethodOfFormatterCalledWithObj()
 {
     object obj = Random.RandomString();
     Mock<IFormatter> mockFormatter = new Mock<IFormatter>();
     StringBuilder stringBuilder = new StringBuilder();
     stringBuilder.AppendSerialization(obj, formatter: mockFormatter.Object);
     String result = stringBuilder.ToString();
     mockFormatter.Verify(f => f.Serialize(It.IsAny<Stream>(), obj), Times.Once());
 }
 public void AppendSerialization_NullInput_ThrowsArgumentNullException()
 {
     StringBuilder stringBuilder = new StringBuilder();
     // ReSharper disable AssignNullToNotNullAttribute
     stringBuilder.AppendSerialization(null);
     // ReSharper restore AssignNullToNotNullAttribute
     String result = stringBuilder.ToString();
     Assert.AreEqual("", result);
 }
 public void AppendSerialization_UnicodeStringsInputAsObject_StringBuilderContainsValidBase64()
 {
     StringBuilder stringBuilder = new StringBuilder();
     stringBuilder.AppendSerialization((Object) Random.RandomString());
     String result = stringBuilder.ToString();
     Assert.AreNotEqual("", result);
     Assert.IsTrue(ValidBase64.IsMatch(result));
 }
 public void AppendSerialization_ListOfIntsInput_StringBuilderContainsValidBase64()
 {
     StringBuilder stringBuilder = new StringBuilder();
     List<int> listOfInts = Enumerable.Range(Random.Next(1, 1000), Random.Next(10, 1000)).ToList();
     stringBuilder.AppendSerialization(listOfInts);
     String result = stringBuilder.ToString();
     Assert.AreNotEqual("", result);
     Assert.IsTrue(ValidBase64.IsMatch(result));
 }