public void DeserializeRequest_Null_Message_Throws() { object[] parameters = new object[] { "hello", 5.0 }; IDispatchMessageFormatter formatter = new SHttpMessageFormatter(); ExceptionAssert.ThrowsArgumentNull("message", () => formatter.DeserializeRequest(/*message*/ null, parameters)); }
public void DeserializeRequest_Null_Parameters_Throws() { Message wcfMessage = new HttpRequestMessage().ToMessage(); IDispatchMessageFormatter formatter = new SHttpMessageFormatter(); ExceptionAssert.ThrowsArgumentNull("parameters", () => formatter.DeserializeRequest(wcfMessage, parameters: null)); }
public void SerializeReply_MessageVersion_Not_None_Throws() { IDispatchMessageFormatter formatter = new SHttpMessageFormatter(); ExceptionAssert.Throws <NotSupportedException>( SR.HttpMessageFormatterMessageVersion(typeof(SHttpMessageFormatter), typeof(MessageVersion), "None"), () => formatter.SerializeReply(MessageVersion.Soap11, parameters: new object[0], result: "result")); }
public void DeserializeRequest_Null_HttpRequestMessage_Throws() { Message wcfMessage = Message.CreateMessage(MessageVersion.None, "unused"); object[] parameters = new object[] { "hello", 5.0 }; IDispatchMessageFormatter formatter = new SHttpMessageFormatter(); ExceptionAssert.Throws <InvalidOperationException>( SR.HttpMessageFormatterNullMessage(typeof(SHttpMessageFormatter).Name, typeof(HttpRequestMessage).Name, "DeserializeRequest"), () => formatter.DeserializeRequest(wcfMessage, parameters)); }
public void SerializeReply_Null_HttpResponseMessage_Throws() { HttpRequestMessage httpRequestMessage = new HttpRequestMessage(); SHttpMessageFormatter formatter = new SHttpMessageFormatter(); formatter.OnSerializeReplyObjectArrayObject = (parameters, result) => null; ExceptionAssert.Throws <InvalidOperationException>( SR.HttpMessageFormatterNullMessage(typeof(SHttpMessageFormatter), typeof(HttpResponseMessage).Name, "SerializeReply"), () => ((IDispatchMessageFormatter)formatter).SerializeReply(MessageVersion.None, parameters: new object[0], result: "result")); }
public void SerializeReply_Returns_HttpResponseMessage() { HttpResponseMessage httpResponseMessage = new HttpResponseMessage(); SHttpMessageFormatter formatter = new SHttpMessageFormatter(); formatter.OnSerializeReplyObjectArrayObject = (parameters, result) => httpResponseMessage; Message wcfMessage = ((IDispatchMessageFormatter)formatter).SerializeReply(MessageVersion.None, parameters: new object[0], result: "result"); Assert.IsNotNull(wcfMessage, "Returned WCF message cannot be null"); HttpResponseMessage returnedHttpResponseMessage = wcfMessage.ToHttpResponseMessage(); Assert.AreSame(httpResponseMessage, returnedHttpResponseMessage, "SerializeReply() response message was not the one we returned."); }
public void SerializeReply_Null_Result_Allowed() { bool receivedNullResult = false; SHttpMessageFormatter formatter = new SHttpMessageFormatter(); formatter.OnSerializeReplyObjectArrayObject = (parameters, result) => { receivedNullResult = (result == null); return(new HttpResponseMessage()); }; ((IDispatchMessageFormatter)formatter).SerializeReply(MessageVersion.None, parameters: new object[0], result: null); Assert.IsTrue(receivedNullResult, "Null result did not make it through SerializeReply"); }
public void SerializeReply_Receives_Parameters_And_Result() { object[] messageParameters = new object[] { "hello", 5.0 }; string messageResult = "hello"; SHttpMessageFormatter formatter = new SHttpMessageFormatter(); formatter.OnSerializeReplyObjectArrayObject = (parameters, result) => { Assert.AreSame(messageParameters, parameters, "SerializeReply() did not receive the input parameters"); Assert.AreSame(messageResult, result, "SerializeReply() did not receive the input result"); return(new HttpResponseMessage()); }; Message responseMessage = ((IDispatchMessageFormatter)formatter).SerializeReply(MessageVersion.None, messageParameters, messageResult); }
public void DeserializeRequest_Receives_Message_And_Parameters() { HttpRequestMessage httpRequestMessage = new HttpRequestMessage(); Message wcfMessage = httpRequestMessage.ToMessage(); object[] messageParameters = new object[] { "hello", 5.0 }; SHttpMessageFormatter formatter = new SHttpMessageFormatter(); formatter.OnDeserializeRequestHttpRequestMessageObjectArray = (msg, parameters) => { Assert.AreSame(httpRequestMessage, msg, "DeserializeRequest() did not receive the HttpRequestMessage we specified"); Assert.AreSame(messageParameters, parameters, "DeserializeRequest() did not receive the parameters we specified"); }; ((IDispatchMessageFormatter)formatter).DeserializeRequest(wcfMessage, messageParameters); }
public void SerializeReply_HttpMessageFormatter_Null_Parameters_Throws() { HttpMessageFormatter formatter = new SHttpMessageFormatter(); ExceptionAssert.ThrowsArgumentNull("parameters", () => formatter.SerializeReply(/*parameters*/ null, /*result*/ "hello")); }