public void WriteObject_Throws_CannotWriteType() { ODataServiceDocumentSerializer serializer = new ODataServiceDocumentSerializer(); Assert.Throws<SerializationException>( () => serializer.WriteObject(42, _workspaceType, messageWriter: ODataTestUtil.GetMockODataMessageWriter(), writeContext: null), "ODataServiceDocumentSerializer cannot write an object of type 'ODataServiceDocument'."); }
public void WriteObject_ThrowsArgumentNull_Graph() { ODataServiceDocumentSerializer serializer = new ODataServiceDocumentSerializer(); Assert.ThrowsArgumentNull( () => serializer.WriteObject(null, type: _workspaceType, messageWriter: null, writeContext: null), "messageWriter"); }
public void ODataServiceDocumentSerializer_Works() { // Arrange ODataServiceDocumentSerializer serializer = new ODataServiceDocumentSerializer(); MemoryStream stream = new MemoryStream(); IODataResponseMessage message = new ODataMessageWrapper(stream); ODataMessageWriterSettings settings = new ODataMessageWriterSettings { ODataUri = new ODataUri { ServiceRoot = new Uri("http://any/"), } }; settings.SetContentType(ODataFormat.Json); ODataMessageWriter writer = new ODataMessageWriter(message, settings); // Act serializer.WriteObject(new ODataServiceDocument(), _workspaceType, writer, new ODataSerializerContext()); stream.Seek(0, SeekOrigin.Begin); string result = new StreamReader(stream).ReadToEnd(); // Assert Assert.Equal("{\"@odata.context\":\"http://any/$metadata\",\"value\":[]}", result); }
public void WriteObject_Throws_CannotWriteType() { ODataServiceDocumentSerializer serializer = new ODataServiceDocumentSerializer(); Assert.Throws <SerializationException>( () => serializer.WriteObject(42, _workspaceType, messageWriter: ODataTestUtil.GetMockODataMessageWriter(), writeContext: null), "ODataServiceDocumentSerializer cannot write an object of type 'ODataServiceDocument'."); }
public void WriteObject_ThrowsArgumentNull_Graph() { ODataServiceDocumentSerializer serializer = new ODataServiceDocumentSerializer(); Assert.ThrowsArgumentNull( () => serializer.WriteObject(null, type: _workspaceType, messageWriter: null, writeContext: null), "messageWriter"); }
public void ODataWorkspaceSerializer_Works() { // Arrange ODataServiceDocumentSerializer serializer = new ODataServiceDocumentSerializer(); MemoryStream stream = new MemoryStream(); IODataResponseMessage message = new ODataMessageWrapper(stream); ODataMessageWriterSettings settings = new ODataMessageWriterSettings(); settings.SetServiceDocumentUri(new Uri("http://any/")); settings.SetContentType(ODataFormat.Atom); ODataMessageWriter writer = new ODataMessageWriter(message, settings); // Act serializer.WriteObject(new ODataServiceDocument(), _workspaceType, writer, new ODataSerializerContext()); // Assert stream.Seek(0, SeekOrigin.Begin); XElement element = XElement.Load(stream); Assert.Equal("service", element.Name.LocalName); }
public void ODataServiceDocumentSerializer_Works() { // Arrange ODataServiceDocumentSerializer serializer = new ODataServiceDocumentSerializer(); MemoryStream stream = new MemoryStream(); IODataResponseMessage message = new ODataMessageWrapper(stream); ODataMessageWriterSettings settings = new ODataMessageWriterSettings { ODataUri = new ODataUri { ServiceRoot = new Uri("http://any/"), } }; settings.SetContentType(ODataFormat.Json); ODataMessageWriter writer = new ODataMessageWriter(message, settings); // Act serializer.WriteObject(new ODataServiceDocument(), _workspaceType, writer, new ODataSerializerContext()); stream.Seek(0, SeekOrigin.Begin); string result = new StreamReader(stream).ReadToEnd(); // Assert Assert.Equal("{\"@odata.context\":\"http://any/$metadata\",\"value\":[]}", result); }