static void RunMainLoop() { Console.Clear(); Console.WriteLine("Введите выражение. " + "Нажмите Enter чтобы вычислить\n"); var expression = Console.ReadLine(); calculator.Parse(expression); var msg = calculator.TryCalculate(out result) ? $"Результат = {result}" : "Выражение некорректно либо привело к ошибке"; ShowResultPending(msg); }
// Ob - opening bracket, Cb - closing bracket для экономии длины public void Parse_ObOb2Plus3ClMul8CbDiv10_ReturnsTheSame() { inputString = "((2+3)*8)/10"; mathExpression.Parse(inputString); var elements = mathExpression.GetCollection(); Assert.Collection(elements, new Action <IExpressionElement>[] { elem => It.IsAny <IOpeningBracket>(), elem => It.IsAny <IOpeningBracket>(), elem => It.IsAny <IDynamicNumber>(), elem => It.IsAny <ICommand>(), elem => It.IsAny <IDynamicNumber>(), elem => It.IsAny <IClosingBracket>(), elem => It.IsAny <ICommand>(), elem => It.IsAny <IDynamicNumber>(), elem => It.IsAny <IClosingBracket>(), elem => It.IsAny <ICommand>(), elem => It.IsAny <IDynamicNumber>(), }); }