private static void ExecuteTestCase(string expression, int value, IDictionary <Variable, int> variableValues = null) { var expressionInterpreter = new ExpressionInterpreter(expression); var result = expressionInterpreter.CalculateWith(variableValues); Assert.AreEqual(value, result, $"Expected result for expression '{expression}' was {value} but got {result}"); }