Package com.puppetlabs.geppetto.pp

Examples of com.puppetlabs.geppetto.pp.SelectorEntry


        if(result == null)
          result = defaultCase(theEObject);
        return result;
      }
      case PPPackage.SELECTOR_ENTRY: {
        SelectorEntry selectorEntry = (SelectorEntry) theEObject;
        T result = caseSelectorEntry(selectorEntry);
        if(result == null)
          result = caseBinaryExpression(selectorEntry);
        if(result == null)
          result = caseExpression(selectorEntry);
View Full Code Here


      if(e instanceof SelectorEntry == false) {
        doFormat(e, stream);
        stream.appendBreaks(1);
      }
      else {
        SelectorEntry se = (SelectorEntry) e;
        int before = stream.size();
        doFormat(se.getLeftExpr(), stream);
        int after = stream.size();
        // pad to width
        stream.appendSpaces(width - (after - before));
        stream.appendSpace();
        stream.appendText("=>");
        stream.appendSpace();
        doFormat(se.getRightExpr(), stream);
        stream.appendText(",");
        stream.appendBreaks(1);
      }
    }
    stream.changeIndentation(-1);
View Full Code Here

          IPPDiagnostics.ISSUE__UNSUPPORTED_EXPRESSION);
        caseExpressions.add(null); // to be skipped later
      }
      else {
        // it is a selector entry
        SelectorEntry se = (SelectorEntry) e;
        Expression e1 = se.getLeftExpr();
        caseExpressions.add(e1);
        if(e1 instanceof LiteralDefault)
          theDefaultIsSeen = true;
      }
    }
View Full Code Here

      titleExpr.getParameters().add(createNameOrReference("a"));
      subTestValidateExpressionTitles(titleExpr);
    }
    { // -- selector
      SelectorExpression titleExpr = pf.createSelectorExpression();
      SelectorEntry entry = pf.createSelectorEntry();
      titleExpr.getParameters().add(entry);

      SingleQuotedString slhs = pf.createSingleQuotedString();
      slhs.setText("\'x\'");
      LiteralName entrylhs = pf.createLiteralName();
      entrylhs.setValue("a");

      titleExpr.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());
      subTestValidateExpressionTitles(titleExpr);
    }
  }
View Full Code Here

  public void test_Serialize_SelectorExpression() {
    PuppetManifest pp = pf.createPuppetManifest();
    SelectorExpression se = pf.createSelectorExpression();
    pp.getStatements().add(se);

    SelectorEntry entry = pf.createSelectorEntry();
    se.getParameters().add(entry);

    LiteralNameOrReference slhs = pf.createLiteralNameOrReference();
    slhs.setValue("x");
    LiteralNameOrReference entrylhs = pf.createLiteralNameOrReference();
    entrylhs.setValue("a");

    se.setLeftExpr(slhs);
    entry.setLeftExpr(entrylhs);
    LiteralBoolean b = pf.createLiteralBoolean();
    b.setValue(true);
    entry.setRightExpr(b);

    String s = serializeFormatted(pp);
    assertEquals("serialization should produce specified result", Sample_Selector, s);

    // add a second entry and format
    entry = pf.createSelectorEntry();
    se.getParameters().add(entry);

    entrylhs = pf.createLiteralNameOrReference();
    entrylhs.setValue("be");
    entry.setLeftExpr(entrylhs);
    b = pf.createLiteralBoolean();
    b.setValue(false);
    entry.setRightExpr(b);

    s = serializeFormatted(pp);
    assertEquals("serialization should produce specified result", Sample_Selector2, s);

  }
View Full Code Here

  public void test_Validate_SelectorExpression_NotOk() {
    PuppetManifest pp = pf.createPuppetManifest();
    SelectorExpression se = pf.createSelectorExpression();
    pp.getStatements().add(se);

    SelectorEntry entry = pf.createSelectorEntry();
    se.getParameters().add(entry);

    AdditiveExpression slhs = pf.createAdditiveExpression();
    slhs.setOpName("+");
    slhs.setLeftExpr(createNameOrReference("1"));
    slhs.setRightExpr(createNameOrReference("1"));

    VariableExpression entrylhs = pf.createVariableExpression();
    entrylhs.setVarName("$a");

    se.setLeftExpr(slhs);
    entry.setLeftExpr(entrylhs);
    entry.setRightExpr(pf.createLiteralBoolean());

    tester.validate(se).assertAll(
      AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT),
      AssertableDiagnostics.errorCode(IPPDiagnostics.ISSUE__UNSUPPORTED_EXPRESSION));

    entry.setLeftExpr(slhs);
    se.setLeftExpr(entrylhs);
    tester.validate(se).assertAll(
      AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT),
      AssertableDiagnostics.errorCode(IPPDiagnostics.ISSUE__UNSUPPORTED_EXPRESSION));
View Full Code Here

  public void test_Validate_SelectorExpression_Ok() {
    PuppetManifest pp = pf.createPuppetManifest();
    SelectorExpression se = pf.createSelectorExpression();
    pp.getStatements().add(se);

    SelectorEntry entry = pf.createSelectorEntry();
    se.getParameters().add(entry);

    // -- Literal String
    {
      SingleQuotedString slhs = pf.createSingleQuotedString();
      slhs.setText("x");
      LiteralName entrylhs = pf.createLiteralName();
      entrylhs.setValue("a");

      se.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());

      tester.validate(se).assertAll(AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT));
    }

    // -- LiteralName
    {
      LiteralName slhs = pf.createLiteralName();
      slhs.setValue("x");
      LiteralName entrylhs = pf.createLiteralName();
      entrylhs.setValue("a");

      se.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());

      tester.validate(se).assertAll(AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT));
    }
    // -- LiteralNameOrReference
    {
      LiteralNameOrReference slhs = createNameOrReference("x");
      LiteralNameOrReference entrylhs = createNameOrReference("a");

      se.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());

      tester.validate(se).assertAll(AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT));
    }
    // -- variable
    {
      VariableExpression slhs = pf.createVariableExpression();
      slhs.setVarName("$x");
      VariableExpression entrylhs = pf.createVariableExpression();
      entrylhs.setVarName("$a");

      se.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());

      tester.validate(se).assertAll(AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT));
    }
    // -- function call
    {
      FunctionCall slhs = pf.createFunctionCall();
      slhs.setLeftExpr(createNameOrReference("include"));
      slhs.getParameters().add(pf.createLiteralBoolean());
      FunctionCall entrylhs = pf.createFunctionCall();
      entrylhs.setLeftExpr(createNameOrReference("include"));
      entrylhs.getParameters().add(pf.createLiteralBoolean());

      se.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());

      tester.validate(se).assertAll(AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT));
    }
    // boolean
    {
      LiteralBoolean slhs = pf.createLiteralBoolean();
      LiteralBoolean entrylhs = pf.createLiteralBoolean();

      se.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());

      tester.validate(se).assertAll(AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT));
    }
    // -- undef
    {
      LiteralUndef slhs = pf.createLiteralUndef();
      LiteralUndef entrylhs = pf.createLiteralUndef();

      se.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());

      tester.validate(se).assertAll(AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT));
    }
    // -- regex
    {
      LiteralRegex slhs = pf.createLiteralRegex();
      slhs.setValue("/[a-z]*/");
      LiteralRegex entrylhs = pf.createLiteralRegex();
      entrylhs.setValue("/[a-z]*/");

      se.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());

      tester.validate(se).assertAll(AssertableDiagnostics.warningCode(IPPDiagnostics.ISSUE__MISSING_DEFAULT));
    }
    // -- default
    {
      LiteralDefault slhs = pf.createLiteralDefault();
      LiteralDefault entrylhs = pf.createLiteralDefault();

      se.setLeftExpr(slhs);
      entry.setLeftExpr(entrylhs);
      entry.setRightExpr(pf.createLiteralBoolean());

      tester.validate(se).assertOK();
    }
  }
View Full Code Here

TOP

Related Classes of com.puppetlabs.geppetto.pp.SelectorEntry

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.