VariableScopeExpressionEvaluator implements ExpressionEvaluator { @Override public Object evaluate(Expression expression, ExpressionManager expressionManager, DelegateInterceptor delegateInterceptor) { return expression.getValue(variableScope); } VariableScopeExpressionEvaluator(VariableScope variableScope); @Override Object evaluate(Expression expression,
        ExpressionManager expressionManager,
        DelegateInterceptor delegateInterceptor);  }
@Test public void evaluate_should_returnResultOfGetValueWithVariableScope() { VariableScope variableScope = mock(VariableScope.class); VariableScopeExpressionEvaluator evaluator = new VariableScopeExpressionEvaluator( variableScope); Expression expression = mock(Expression.class); given(expression.getValue(variableScope)).willReturn("London"); Object value = evaluator.evaluate(expression, expressionManager, delegateInterceptor); assertThat(value).isEqualTo("London"); }