Arithmetica.Tests.Tokenization.TokenPipelineTests.TokenPipeline_Exceptions_Thrown_By_Processor_Is_Wrapped_In_MathExpressionException C# (CSharp) Метод

TokenPipeline_Exceptions_Thrown_By_Processor_Is_Wrapped_In_MathExpressionException() приватный Метод

        public void TokenPipeline_Exceptions_Thrown_By_Processor_Is_Wrapped_In_MathExpressionException()
        {
            var processor1 = new TestActionProcessor(() => { throw new InvalidOperationException("An error."); });
            var processor2 = new TestActionProcessor(() => { });
            TokenPipeline pipeline = new TokenPipeline(processor1, processor2);
            var exception = Assert.Throws<MathExpressionException>(() => pipeline.Process(new TokenStream(new Token[] { }, TokenNotation.Infix)));
            Assert.IsInstanceOf<InvalidOperationException>(exception.InnerException);
            Assert.AreEqual("An error occured while processing tokens. See inner exception for details.", exception.Message);
            Assert.AreEqual("An error.", exception.InnerException.Message);
        }