public void SelectOperation_Non_Http_Message_Throws() { IDispatchOperationSelector selector = new MockHttpMessageOperationSelector(); Message message = Message.CreateMessage(MessageVersion.None, "notUsed"); ExceptionAssert.ThrowsInvalidOperation( "WCF message without inner http message should throw", () => { selector.SelectOperation(ref message); }); }
public void SelectOperation_Null_Message_Throws() { IDispatchOperationSelector selector = new MockHttpMessageOperationSelector(); Message message = null; ExceptionAssert.ThrowsArgumentNull( "Null WCF message should throw", "message", () => { selector.SelectOperation(ref message); }); }
public void SelectOperation_Returns_Custom_Operation_Name() { Message message = new HttpRequestMessage().ToMessage(); IDispatchOperationSelector selector = new MockHttpMessageOperationSelector() { OnSelectOperation = m => { return "CustomOperation"; } }; string returnedOperation = selector.SelectOperation(ref message); Assert.AreEqual("CustomOperation", returnedOperation, "SelectOperation should have returned custom operation name"); Assert.IsTrue(((MockHttpMessageOperationSelector)selector).WasSelectOperationCalled, "SelectOperation in derived class was not called"); }
public void SelectOperation_Null_Return_Throws() { Message message = new HttpRequestMessage().ToMessage(); IDispatchOperationSelector selector = new MockHttpMessageOperationSelector() { OnSelectOperation = m => { return null; } }; ExceptionAssert.ThrowsInvalidOperation( "Null operation return should throw", () => { selector.SelectOperation(ref message); }); }