Package com.puppetlabs.geppetto.pp

Examples of com.puppetlabs.geppetto.pp.SelectorExpression


        if(result == null)
          result = defaultCase(theEObject);
        return result;
      }
      case PPPackage.SELECTOR_EXPRESSION: {
        SelectorExpression selectorExpression = (SelectorExpression) theEObject;
        T result = caseSelectorExpression(selectorExpression);
        if(result == null)
          result = caseParameterizedExpression(selectorExpression);
        if(result == null)
          result = caseExpression(selectorExpression);
View Full Code Here


      titleExpr.setLeftExpr(createNameOrReference("Foo"));
      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

  // @formatter:on

  @Test
  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();
View Full Code Here

  }

  @Test
  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

  }

  @Test
  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.SelectorExpression

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.