public void Read_Primitive(object obj) { // Arrange IEdmModel model = EdmCoreModel.Instance; ODataPrimitiveSerializer serializer = new ODataPrimitiveSerializer(); ODataPrimitiveDeserializer deserializer = new ODataPrimitiveDeserializer(); MemoryStream stream = new MemoryStream(); ODataMessageWrapper message = new ODataMessageWrapper(stream); ODataMessageWriter messageWriter = new ODataMessageWriter(message as IODataResponseMessage, new ODataMessageWriterSettings(), model); ODataMessageReader messageReader = new ODataMessageReader(message as IODataResponseMessage, new ODataMessageReaderSettings(), model); ODataSerializerContext writeContext = new ODataSerializerContext { RootElementName = "Property", Model = model }; ODataDeserializerContext readContext = new ODataDeserializerContext { Model = model }; serializer.WriteObject(obj, typeof(int), messageWriter, writeContext); stream.Seek(0, SeekOrigin.Begin); // Act & Assert Assert.Equal(obj, deserializer.Read(messageReader, typeof(int), readContext)); }
public void Read_MappedPrimitive(object obj, object expected) { // Arrange IEdmModel model = CreateModel(); ODataPrimitiveSerializer serializer = new ODataPrimitiveSerializer(); ODataPrimitiveDeserializer deserializer = new ODataPrimitiveDeserializer(); MemoryStream stream = new MemoryStream(); ODataMessageWrapper message = new ODataMessageWrapper(stream); ODataMessageWriterSettings settings = new ODataMessageWriterSettings { ODataUri = new ODataUri { ServiceRoot = new Uri("http://any/"), } }; settings.SetContentType(ODataFormat.Json); ODataMessageWriter messageWriter = new ODataMessageWriter(message as IODataResponseMessage, settings, model); ODataMessageReader messageReader = new ODataMessageReader(message as IODataResponseMessage, new ODataMessageReaderSettings(), model); ODataSerializerContext writeContext = new ODataSerializerContext { RootElementName = "Property", Model = model }; ODataDeserializerContext readContext = new ODataDeserializerContext { Model = model }; Type type = obj == null ? typeof(int) : expected.GetType(); serializer.WriteObject(obj, type, messageWriter, writeContext); stream.Seek(0, SeekOrigin.Begin); // Act && Assert Assert.Equal(expected, deserializer.Read(messageReader, type, readContext)); }
public void Read_Primitive(object obj) { // Arrange IEdmPrimitiveTypeReference primitive = EdmLibHelpers.GetEdmPrimitiveTypeReferenceOrNull(typeof(int)); ODataPrimitiveSerializer serializer = new ODataPrimitiveSerializer(primitive); ODataPrimitiveDeserializer deserializer = new ODataPrimitiveDeserializer(primitive); MemoryStream stream = new MemoryStream(); ODataMessageWrapper message = new ODataMessageWrapper(stream); serializer.WriteObject( obj, new ODataMessageWriter(message as IODataResponseMessage, new ODataMessageWriterSettings(), EdmCoreModel.Instance), new ODataSerializerContext { RootElementName = "Property" }); stream.Seek(0, SeekOrigin.Begin); Assert.Equal( obj, deserializer.Read( new ODataMessageReader(message as IODataResponseMessage, new ODataMessageReaderSettings(), EdmCoreModel.Instance), new ODataDeserializerContext())); }
public void ConvertUnsupportedPrimitives_NonStandardEdmPrimitives(object graph, object result) { // Arrange & Act & Assert Assert.Equal(result, ODataPrimitiveSerializer.ConvertUnsupportedPrimitives(graph, timeZoneInfo: null)); }
public void Property_ODataPayloadKind() { var serializer = new ODataPrimitiveSerializer(); Assert.Equal(ODataPayloadKind.Property, serializer.ODataPayloadKind); }
public void ConvertUnsupportedPrimitives_NonStandardEdmPrimitives(object graph, object result) { Assert.Equal( result, ODataPrimitiveSerializer.ConvertUnsupportedPrimitives(graph)); }
public MockContainer() { serializerProvider = new DefaultODataSerializerProvider(this); collectionSerializer = new ODataCollectionSerializer(serializerProvider); primitiveSerializer = new ODataPrimitiveSerializer(); }
public static string GetUriRepresentationForDateTime(DateTime dateTime, TimeZoneInfo timeZoneInfo) { object value = ODataPrimitiveSerializer.ConvertUnsupportedDateTime(dateTime, timeZoneInfo); return(ODataUriUtils.ConvertToUriLiteral(value, ODataVersion.V4)); }