[FullTrustTest] // ISerializable types cannot be deserialized in medium trust. public void InvokeOperation_ReturnsXElement() { TestProvider_Scenarios provider = new TestProvider_Scenarios(TestURIs.TestProvider_Scenarios); string elementName = "Foo", elementValue = "Bar"; var xml = XElement.Parse(string.Format("<{0} xmlns=\"foo\">{1}</{0}>", elementName, elementValue)); InvokeOperation invoke = provider.ReturnsXElement(xml, TestHelperMethods.DefaultOperationAction, null); EnqueueConditional(() => invoke.IsComplete); EnqueueCallback(delegate { object returnValue = invoke.Value; Assert.IsNotNull(invoke.Value); Assert.AreEqual(typeof(XElement), returnValue.GetType()); Assert.AreEqual(xml.ToString(), returnValue.ToString()); }); EnqueueTestComplete(); }