public void Should_return_exception_if_not_aggregate_exception()
        {
            var exception = new Exception("Not an aggregate exception.", new Exception("Inner exception."));
            var result = exception.FlattenInnerExceptions();

            Assert.Equal(exception, result);
        }
        private Response ResolveErrorResult(NancyContext context, Func<NancyContext, Exception, dynamic> resolveResultOnError, Exception exception)
        {
            if (resolveResultOnError != null)
            {
                var flattenedException = exception.FlattenInnerExceptions();

                var result = resolveResultOnError.Invoke(context, flattenedException);
                if (result != null)
                {
                    return this.negotiator.NegotiateResponse(result, context);
                }
            }

            return null;
        }