public void UnhandledInvokeOperationError() { CityDomainContext cities = new CityDomainContext(TestURIs.Cities); InvokeOperation invoke = new InvokeOperation("Echo", null, null, null, false); DomainOperationException expectedException = null; DomainOperationException ex = new DomainOperationException("Operation Failed!", OperationErrorStatus.ServerError, 42, "StackTrace"); try { invoke.SetError(ex); } catch (DomainOperationException e) { expectedException = e; } // verify the exception properties Assert.AreSame(ex, expectedException); Assert.AreEqual(false, invoke.IsErrorHandled); // now test again with validation errors expectedException = null; ValidationResult[] validationErrors = new ValidationResult[] { new ValidationResult("Foo", new string[] { "Bar" }) }; invoke = new InvokeOperation("Echo", null, null, null, false); var validationException = new DomainOperationException("validation", validationErrors); try { invoke.SetError(validationException); } catch (DomainOperationException e) { expectedException = e; } // verify the exception properties Assert.AreSame(validationException, expectedException); CollectionAssert.AreEqual(validationErrors, (ICollection)invoke.ValidationErrors); }