@Test
public void avoidCoercingBinaryExpressions () {

    final TypedExpression left = expr(THIS_PLACEHOLDER + ".getAddress().getCity() == \"Brno\" && _this.getAddress().getStreet() == \"Technology Park\"", String.class);
    final TypedExpression right = expr(THIS_PLACEHOLDER + ".getAddress().getNumber() == 1", int.class);
    final CoercedExpression.CoercedExpressionResult coerce = new CoercedExpression(left, right, false).coerce();
    assertEquals(expr(THIS_PLACEHOLDER + ".getAddress().getCity() == \"Brno\" && _this.getAddress().getStreet() == \"Technology Park\"", String.class), coerce.getCoercedLeft());
    assertEquals(expr(THIS_PLACEHOLDER + ".getAddress().getNumber() == 1", int.class), coerce.getCoercedRight());
}