public void testOperatorPrecedenceOrder() {
    Serializable compiled =
        compileExpression("bean1.successful && bean2.failed || bean1.failed && bean2.successful");
    Map context = new HashMap();

    BeanB bean1 = new BeanB(true);
    BeanB bean2 = new BeanB(false);

    context.put("bean1",
        bean1);
    context.put("bean2",
        bean2);

    System.out.println("interpreted: "
        + MVEL.eval("bean1.successful && bean2.failed || bean1.failed && bean2.successful",
        context));

    assertEquals(bean1.isSuccessful() && bean2.isFailed() || bean1.isFailed() && bean2.isSuccessful(),
        (boolean) executeExpression(compiled,
            context,
            Boolean.class));
  }