public static UConditional create(
      UExpression conditionExpr, UExpression trueExpr, UExpression falseExpr) {
    return new AutoValue_UConditional(conditionExpr, trueExpr, falseExpr);
  }
@Test
  public void equality() {
    ULiteral trueLit = ULiteral.booleanLit(true);
    ULiteral falseLit = ULiteral.booleanLit(false);
    ULiteral negOneLit = ULiteral.intLit(-1);
    ULiteral oneLit = ULiteral.intLit(1);
    new EqualsTester()
        .addEqualityGroup(UConditional.create(trueLit, negOneLit, oneLit))
        .addEqualityGroup(UConditional.create(trueLit, oneLit, oneLit))
        .addEqualityGroup(UConditional.create(trueLit, negOneLit, negOneLit))
        .addEqualityGroup(UConditional.create(falseLit, negOneLit, oneLit))
        .testEquals();
  }