Search in sources :

Example 26 with EvaluationContext

use of org.eclipse.core.expressions.EvaluationContext in project eclipse.platform.runtime by eclipse.

the class ExpressionTests method testIterateExpressionOrMultiChildren.

public void testIterateExpressionOrMultiChildren() throws Exception {
    // Test for Bug 260522: <iterate> iterates over collection elements,
    // thereby *and*-ing all evaluated child expressions
    // $NON-NLS-1$
    IterateExpression exp = new IterateExpression("or");
    exp.add(Expression.FALSE);
    exp.add(Expression.TRUE);
    List<String> input = new ArrayList<>();
    // $NON-NLS-1$
    input.add("one");
    EvaluationContext context = new EvaluationContext(null, input);
    assertTrue(EvaluationResult.FALSE == exp.evaluate(context));
}
Also used : ArrayList(java.util.ArrayList) IterateExpression(org.eclipse.core.internal.expressions.IterateExpression) IEvaluationContext(org.eclipse.core.expressions.IEvaluationContext) EvaluationContext(org.eclipse.core.expressions.EvaluationContext)

Example 27 with EvaluationContext

use of org.eclipse.core.expressions.EvaluationContext in project eclipse.platform.runtime by eclipse.

the class ExpressionTests method testIterateExpressionAndMultiChildren.

public void testIterateExpressionAndMultiChildren() throws Exception {
    // Test for Bug 260522: <iterate> iterates over collection elements,
    // thereby *and*-ing all evaluated child expressions
    // $NON-NLS-1$
    IterateExpression exp = new IterateExpression("and");
    exp.add(Expression.FALSE);
    exp.add(Expression.TRUE);
    List<String> input = new ArrayList<>();
    // $NON-NLS-1$
    input.add("one");
    // $NON-NLS-1$
    input.add("two");
    EvaluationContext context = new EvaluationContext(null, input);
    assertTrue(EvaluationResult.FALSE == exp.evaluate(context));
}
Also used : ArrayList(java.util.ArrayList) IterateExpression(org.eclipse.core.internal.expressions.IterateExpression) IEvaluationContext(org.eclipse.core.expressions.IEvaluationContext) EvaluationContext(org.eclipse.core.expressions.EvaluationContext)

Example 28 with EvaluationContext

use of org.eclipse.core.expressions.EvaluationContext in project eclipse.platform.runtime by eclipse.

the class ExpressionTests method testCountExpressionExact.

public void testCountExpressionExact() throws Exception {
    // $NON-NLS-1$
    CountExpression exp = new CountExpression("2");
    List<String> list = new ArrayList<>();
    // $NON-NLS-1$
    list.add("one");
    EvaluationContext context = new EvaluationContext(null, list);
    assertTrue(EvaluationResult.FALSE == exp.evaluate(context));
    list.clear();
    // $NON-NLS-1$
    list.add("one");
    // $NON-NLS-1$
    list.add("two");
    context = new EvaluationContext(null, list);
    assertTrue(EvaluationResult.TRUE == exp.evaluate(context));
    list.clear();
    // $NON-NLS-1$
    list.add("one");
    // $NON-NLS-1$
    list.add("two");
    // $NON-NLS-1$
    list.add("three");
    context = new EvaluationContext(null, list);
    assertTrue(EvaluationResult.FALSE == exp.evaluate(context));
}
Also used : ArrayList(java.util.ArrayList) CountExpression(org.eclipse.core.internal.expressions.CountExpression) IEvaluationContext(org.eclipse.core.expressions.IEvaluationContext) EvaluationContext(org.eclipse.core.expressions.EvaluationContext)

Example 29 with EvaluationContext

use of org.eclipse.core.expressions.EvaluationContext in project eclipse.platform.runtime by eclipse.

the class ExpressionTests method testWithExpressionNoVariable.

public void testWithExpressionNoVariable() throws Exception {
    WithExpression expr = new WithExpression("variable");
    expr.add(new EqualsExpression(new Object()));
    EvaluationContext context = new EvaluationContext(null, new Object());
    try {
        expr.evaluate(context);
        fail("Should throw exceptoin");
    } catch (CoreException e) {
    // this is success
    }
}
Also used : CoreException(org.eclipse.core.runtime.CoreException) IEvaluationContext(org.eclipse.core.expressions.IEvaluationContext) EvaluationContext(org.eclipse.core.expressions.EvaluationContext) WithExpression(org.eclipse.core.internal.expressions.WithExpression) EqualsExpression(org.eclipse.core.internal.expressions.EqualsExpression)

Example 30 with EvaluationContext

use of org.eclipse.core.expressions.EvaluationContext in project eclipse.platform.runtime by eclipse.

the class ExpressionTests method testCountExpressionNoneOrOne.

public void testCountExpressionNoneOrOne() throws Exception {
    // $NON-NLS-1$
    CountExpression exp = new CountExpression("?");
    List<String> list = new ArrayList<>();
    EvaluationContext context = new EvaluationContext(null, list);
    assertTrue(EvaluationResult.TRUE == exp.evaluate(context));
    list.clear();
    // $NON-NLS-1$
    list.add("one");
    context = new EvaluationContext(null, list);
    assertTrue(EvaluationResult.TRUE == exp.evaluate(context));
    list.clear();
    // $NON-NLS-1$
    list.add("one");
    // $NON-NLS-1$
    list.add("two");
    context = new EvaluationContext(null, list);
    assertTrue(EvaluationResult.FALSE == exp.evaluate(context));
}
Also used : ArrayList(java.util.ArrayList) CountExpression(org.eclipse.core.internal.expressions.CountExpression) IEvaluationContext(org.eclipse.core.expressions.IEvaluationContext) EvaluationContext(org.eclipse.core.expressions.EvaluationContext)

Aggregations

EvaluationContext (org.eclipse.core.expressions.EvaluationContext)71 IEvaluationContext (org.eclipse.core.expressions.IEvaluationContext)56 ArrayList (java.util.ArrayList)26 IterateExpression (org.eclipse.core.internal.expressions.IterateExpression)22 CountExpression (org.eclipse.core.internal.expressions.CountExpression)14 InstanceofExpression (org.eclipse.core.internal.expressions.InstanceofExpression)13 AdaptExpression (org.eclipse.core.internal.expressions.AdaptExpression)12 Command (org.eclipse.core.commands.Command)11 WithExpression (org.eclipse.core.internal.expressions.WithExpression)11 ICommandService (org.eclipse.ui.commands.ICommandService)11 EvaluationResult (org.eclipse.core.expressions.EvaluationResult)10 EqualsExpression (org.eclipse.core.internal.expressions.EqualsExpression)10 CoreException (org.eclipse.core.runtime.CoreException)10 EnablementExpression (org.eclipse.core.internal.expressions.EnablementExpression)9 TestExpression (org.eclipse.core.internal.expressions.TestExpression)9 IHandlerService (org.eclipse.ui.handlers.IHandlerService)9 ParameterizedCommand (org.eclipse.core.commands.ParameterizedCommand)8 Expression (org.eclipse.core.expressions.Expression)8 SystemTestExpression (org.eclipse.core.internal.expressions.SystemTestExpression)8 AndExpression (org.eclipse.core.internal.expressions.AndExpression)7