public void ShouldBeSerializable()
        {
            var mockSelectorContext = new MockSelectorContext("A");
            var mockValueContext    = new MockValueContext(mockSelectorContext, 0);

            var actual   = new InvalidConversionException(mockValueContext, null);
            var fileName = Path.GetRandomFileName();

            using var stream = new FileStream(fileName, FileMode.Create);
            var serializer = new DataContractSerializer(typeof(InvalidConversionException));

            serializer.WriteObject(stream, actual);
            stream.Position = 0;
            var expected = serializer.ReadObject(stream) as InvalidConversionException;

            expected
            .Should().NotBeNull();

            expected?.Message
            .Should()
            .Be(actual.Message);
        }
Exemplo n.º 2
0
        protected void OnShouldBeSerializable <T>() where T : Exception
        {
            var mockSelectorContext   = new MockSelectorContext("A");
            var mockArgumentsContext  = new MockArgumentsContext("A");
            var mockComparisonContext = new MockComparisonContext(mockSelectorContext, mockArgumentsContext);
            var constructor           = typeof(T).GetConstructor(new[] { typeof(RSqlQueryParser.ComparisonContext), typeof(Exception) });

            var actual   = (T)constructor.Invoke(new object[] { mockComparisonContext, null });
            var fileName = Path.GetRandomFileName();

            using var stream = new FileStream(fileName, FileMode.Create);
            var serializer = new DataContractSerializer(typeof(T));

            serializer.WriteObject(stream, actual);
            stream.Position = 0;
            var expected = (T)serializer.ReadObject(stream);

            expected
            .Should().NotBeNull();

            expected?.Message
            .Should()
            .Be(actual.Message);
        }