Search in sources :

Example 21 with InstanceofExpression

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

the class ExpressionTests method testSubType.

public void testSubType() throws Exception {
    EvaluationContext context = new EvaluationContext(null, IEvaluationContext.UNDEFINED_VARIABLE);
    ArrayList<AbstractCollection<?>> list = new ArrayList<>();
    HashSet<?> o1 = new HashSet<>();
    EvaluationContext c1 = new EvaluationContext(null, o1);
    list.add(o1);
    ArrayList<?> o2 = new ArrayList<>();
    EvaluationContext c2 = new EvaluationContext(null, o2);
    list.add(o2);
    LinkedList<?> o3 = new LinkedList<>();
    EvaluationContext c3 = new EvaluationContext(null, o3);
    list.add(o3);
    context.addVariable("selection", list);
    WithExpression with = new WithExpression("selection");
    IterateExpression iterate = new IterateExpression("and", "false");
    with.add(iterate);
    InstanceofExpression iCollection = new InstanceofExpression("java.util.Collection");
    iterate.add(iCollection);
    InstanceofExpression iSet = new InstanceofExpression("java.util.Set");
    InstanceofExpression iList = new InstanceofExpression("java.util.List");
    assertEquals(EvaluationResult.TRUE, iSet.evaluate(c1));
    assertEquals(EvaluationResult.FALSE, iList.evaluate(c1));
    assertEquals(EvaluationResult.FALSE, iSet.evaluate(c2));
    assertEquals(EvaluationResult.TRUE, iList.evaluate(c2));
    assertEquals(EvaluationResult.FALSE, iSet.evaluate(c3));
    assertEquals(EvaluationResult.TRUE, iList.evaluate(c3));
    assertEquals(EvaluationResult.TRUE, with.evaluate(context));
}
Also used : InstanceofExpression(org.eclipse.core.internal.expressions.InstanceofExpression) AbstractCollection(java.util.AbstractCollection) ArrayList(java.util.ArrayList) IEvaluationContext(org.eclipse.core.expressions.IEvaluationContext) EvaluationContext(org.eclipse.core.expressions.EvaluationContext) IterateExpression(org.eclipse.core.internal.expressions.IterateExpression) WithExpression(org.eclipse.core.internal.expressions.WithExpression) LinkedList(java.util.LinkedList) HashSet(java.util.HashSet)

Example 22 with InstanceofExpression

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

the class ExpressionTests method testInstanceofTrue.

public void testInstanceofTrue() throws Exception {
    B b = new B();
    EvaluationContext context = new EvaluationContext(null, b);
    // $NON-NLS-1$
    InstanceofExpression exp = new InstanceofExpression("org.eclipse.core.internal.expressions.tests.B");
    assertTrue(EvaluationResult.TRUE == exp.evaluate(context));
    // $NON-NLS-1$
    exp = new InstanceofExpression("org.eclipse.core.internal.expressions.tests.A");
    assertTrue(EvaluationResult.TRUE == exp.evaluate(context));
    // $NON-NLS-1$
    exp = new InstanceofExpression("org.eclipse.core.internal.expressions.tests.I");
    assertTrue(EvaluationResult.TRUE == exp.evaluate(context));
}
Also used : InstanceofExpression(org.eclipse.core.internal.expressions.InstanceofExpression) IEvaluationContext(org.eclipse.core.expressions.IEvaluationContext) EvaluationContext(org.eclipse.core.expressions.EvaluationContext)

Example 23 with InstanceofExpression

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

the class ExpressionTests method testAdaptExpressionNotEqual.

public void testAdaptExpressionNotEqual() throws Exception {
    AdaptExpression expression1 = new AdaptExpression(// $NON-NLS-1$
    "org.eclipse.core.internal.expressions.tests.Adapter");
    expression1.add(new InstanceofExpression(// $NON-NLS-1$
    "org.eclipse.core.internal.expressions.tests.Adapter1"));
    AdaptExpression expression2 = new AdaptExpression(// $NON-NLS-1$
    "org.eclipse.core.internal.expressions.tests.Adapter");
    expression2.add(new InstanceofExpression(// $NON-NLS-1$
    "org.eclipse.core.internal.expressions.tests.Adapter2"));
    assertTrue("These adapt expressions should not be equal", !expression1.equals(expression2));
}
Also used : InstanceofExpression(org.eclipse.core.internal.expressions.InstanceofExpression) AdaptExpression(org.eclipse.core.internal.expressions.AdaptExpression)

Example 24 with InstanceofExpression

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

the class ExpressionTests method testInstanceOfExpressionNotEqual.

public void testInstanceOfExpressionNotEqual() throws Exception {
    InstanceofExpression expression1 = new InstanceofExpression("+");
    InstanceofExpression expression2 = new InstanceofExpression("!");
    assertTrue("These instance of expressions should not be equal", !expression1.equals(expression2));
}
Also used : InstanceofExpression(org.eclipse.core.internal.expressions.InstanceofExpression)

Aggregations

InstanceofExpression (org.eclipse.core.internal.expressions.InstanceofExpression)24 EvaluationContext (org.eclipse.core.expressions.EvaluationContext)6 IEvaluationContext (org.eclipse.core.expressions.IEvaluationContext)6 AdaptExpression (org.eclipse.core.internal.expressions.AdaptExpression)5 EvaluationResult (org.eclipse.core.expressions.EvaluationResult)3 IterateExpression (org.eclipse.core.internal.expressions.IterateExpression)3 WithExpression (org.eclipse.core.internal.expressions.WithExpression)3 AndExpression (org.eclipse.core.internal.expressions.AndExpression)2 EnablementExpression (org.eclipse.core.internal.expressions.EnablementExpression)2 NotExpression (org.eclipse.core.internal.expressions.NotExpression)2 OrExpression (org.eclipse.core.internal.expressions.OrExpression)2 ResolveExpression (org.eclipse.core.internal.expressions.ResolveExpression)2 AbstractCollection (java.util.AbstractCollection)1 ArrayList (java.util.ArrayList)1 HashSet (java.util.HashSet)1 LinkedList (java.util.LinkedList)1