Examples of TCGTransition


Examples of net.sf.parteg.base.testcasegraph.generated.TCGTransition

          continue;
       
        for(TCGNode oNode : TCGTransitionHelperClass.getTargetNodes(oTransInst.getTransition())) {
          List<TCGTransition> colOutgoingTransitions = TCGNodeHelperClass.getOutgoingTransitions(oNode);
          if(colOutgoingTransitions.size() == 1) { // TODO watch for parallelism
            TCGTransition oTransition = colOutgoingTransitions.get(0);
            if(TCGTransitionHelperClass.transitionHasNoEventTrigger(oTransition)) {
              if(colAddedTransitions.contains(oTransition))
                continue;
               
              if(TCGTransitionHelperClass.transitionHasNoEventTrigger(oTransition)) {
View Full Code Here

Examples of net.sf.parteg.base.testcasegraph.generated.TCGTransition

//        EObject oMatchedEventParameter =
//          TCGEventHelperClass.getMapExprParamToEventParam().get(oVar.getRepresentedParameter());
//        if(oMatchedEventParameter == null)
//          oMatchedEventParameter = oVar.getRepresentedParameter();
//        if(oParameterInstance.getParameter().getReference().equals(oMatchedEventParameter)) {
        TCGTransition oTraversedTransition = in_oTransitionInstance.getTransition();
        List<Parameter> colMatchedEventParameters = new ArrayList<Parameter>();
        colMatchedEventParameters.add(oVar.getRepresentedParameter());
        if(oTraversedTransition != null) {
          colMatchedEventParameters.addAll(
            TCGEventHelperClass.getEventParameters(
View Full Code Here

Examples of net.sf.parteg.base.testcasetree.generated.TCGTransition

        T result = caseTestCaseGraph(testCaseGraph);
        if (result == null) result = defaultCase(theEObject);
        return result;
      }
      case GeneratedPackage.TCG_TRANSITION: {
        TCGTransition tcgTransition = (TCGTransition)theEObject;
        T result = caseTCGTransition(tcgTransition);
        if (result == null) result = caseTCGElement(tcgTransition);
        if (result == null) result = defaultCase(theEObject);
        return result;
      }
View Full Code Here

Examples of net.sf.parteg.base.testcasetree.generated.TCGTransition

  }
 
  public TCGTransition addTransition(TCGNode in_oSourceNode,
      TCGNode in_oTargetNode)
  {
    TCGTransition oTransition = GeneratedFactory.eINSTANCE.createTCGTransition();
    m_oTCG.getTransitions().add(oTransition);
   
    oTransition.setSourceNode(in_oSourceNode);
    in_oSourceNode.getOutgoingTransitions().add(oTransition);

    oTransition.setTargetNode(in_oTargetNode);
    in_oTargetNode.getIncomingTransitions().add(oTransition);
   
    return oTransition;
  }
View Full Code Here

Examples of net.sf.parteg.base.testcasetree.generated.TCGTransition

          bReachingTransitionBearsConflicts = true;
        }
        else
        {
          TCGEvent oTCGEvent = createTCGEvent(in_oEvent, in_bCreateTCGEventIfEventIsNull);           
          TCGTransition oTransition = createTCGPart(in_oTCGNode,
              (oTCGEvent != null ? oTCGEvent.getName() : Configuration.getDefaultTransitionName()));
          // remember original expression
          oTransition.getTargetNode().setOriginalExpression(in_oExpression);
         
          if(oTransition != null)
          {
            boolean bResult = true;
            // adapt all parameters of all expressions of the conjunction
            for(TCGOCLExpression oExpression : oConjunction.getExpressions())
            {
              adaptTCGOCLExpression(oExpression, oTransition, oTCGEvent, in_oContextClass);
              if(oTransition.getPrecondition().getConjunctions().isEmpty())
                oTransition.getPrecondition().getConjunctions().add(
                    GeneratedFactory.eINSTANCE.createTCGConjunction());
              oTransition.getPrecondition().getConjunctions().get(0).getExpressions().add(oExpression);
              bResult = bResult && adaptDomainForNonPostcondition(oExpression, oTransition.getTargetNode(), oTransition.getTargetNode());
            }
   
            if(bResult == false)
            {
              removeTransition(oTransition);
              bReachingTransitionBearsConflicts = true;
            }
            else
            {
              // mark node as its purpose is just to negate an expression 
              if(!oConjunction.isPositiveSubExpressionOfOriginal())
                oTransition.getTargetNode().setCorrespondsNegativeExpression(true);
              colNodes.add(oTransition.getTargetNode());
            }
          }
        }
      }
    }
   
    // expression results in no new nodes and no conflicts found? -> add default node
    if(colNodes.isEmpty() && !bReachingTransitionBearsConflicts)
    {
      TCGEvent oTCGEvent = createTCGEvent(in_oEvent, true);           
      TCGTransition oTransition = createTCGPart(in_oTCGNode, oTCGEvent.getName());
      if(oTransition != null)
      {
        addEvent(null, oTransition, oTCGEvent, in_oContextClass);
        colNodes.add(oTransition.getTargetNode());
      }
    }
   
    return colNodes;
 
View Full Code Here

Examples of net.sf.parteg.base.testcasetree.generated.TCGTransition

    // add expressions for coverage criterion
    ExpressionConverter.addConjunctionsForCoverageCriterion(oDNF);

    for(TCGConjunction oConjunction : oDNF.getConjunctions())
    {
      TCGTransition oTransition = createTCGPart(in_oTCGNode, in_oOperation.getName());

      if(oTransition != null)
      {
        // remember original expression
        oTransition.getTargetNode().setOriginalExpression(in_oExpression);

        boolean bResult = true;
        for(TCGOCLExpression oExpression : oConjunction.getExpressions())
        {
          adaptTCGOCLExpression(oExpression, oTransition, null, in_oContextClass);
          if(oTransition.getPrecondition().getConjunctions().isEmpty())
            oTransition.getPrecondition().getConjunctions().add(
                GeneratedFactory.eINSTANCE.createTCGConjunction());
          oTransition.getPrecondition().getConjunctions().get(0).getExpressions().add(oExpression);
          bResult = bResult && adaptDomainForNonPostcondition(oExpression, oTransition.getTargetNode(), oTransition.getTargetNode());
        }

        if(bResult == false)
        {
          removeTransition(oTransition);
        }
        else
        {
          // further handle only nodes with correct expressions 
          if(oConjunction.isPositiveSubExpressionOfOriginal())
            colNodes.add(oTransition.getTargetNode());
          else
            oTransition.getTargetNode().setCorrespondsNegativeExpression(true); // mark node as its purpose is just to negate an expression
        }       
      }
    }
    return colNodes;
  }
View Full Code Here

Examples of net.sf.parteg.base.testcasetree.generated.TCGTransition

    TCGOCLExpression oTCGOCLExp = TransformOCLToTCGOCL.transformExpression(
        in_oExpression, Configuration.getOCLPostId(), in_oContextClass);
    TCGDisjunctiveNormalForm oDNF = ExpressionConverter.createDisjunctiveNormalForm(oTCGOCLExp);
    for(TCGConjunction oConjunction : oDNF.getConjunctions())
    {
      TCGTransition oTransition = createTCGPart(in_oTCGNode, in_oOperation.getName());
      if(oTransition != null)
      {
        // remember original expression
        oTransition.getTargetNode().setOriginalExpression(in_oExpression);
       
        TCGEvent oTCGEvent = findTriggeringEvent(oTransition);
        boolean bResult = true;
       
        for(TCGOCLExpression oExpression : oConjunction.getExpressions())
        {
          adaptTCGOCLExpression(oExpression, oTransition, null, in_oContextClass);
          referToEvent(oTCGEvent, oExpression);
          if(oTransition.getPostcondition().getConjunctions().isEmpty())
            oTransition.getPostcondition().getConjunctions().add(
                GeneratedFactory.eINSTANCE.createTCGConjunction());
          oTransition.getPostcondition().getConjunctions().get(0).getExpressions().add(oExpression);
         
          // if this postcondition contains no dependent elements -> then adapt the domain!
          TCGOCLVariableClassificator oClassificator = new TCGOCLVariableClassificator(oExpression);
          TCGOCLExpression oActiveDependentExpression = oClassificator.getClassifiedElementInExpression(VariableClassification.ACTIVE_DEPENDENT);
//          TCGOCLExpression oPassiveDependentExpression = oClassificator.getClassifiedElementInExpression(VariableClassification.PASSIVE_DEPENDENT);
          if(oActiveDependentExpression == null)
          {
//            if(oPassiveDependentExpression == null) // just constants and input parameters
//            {
              bResult = bResult && adaptDomainForNonPostcondition(oExpression, oTransition.getTargetNode(), oTransition.getTargetNode());
//            }
//            else // no active dependent variables -> restrict value domain (act like for precondition)
//            {
//              bResult = bResult && adaptDomainForNonPostcondition(oExpression, oTransition.getTargetNode(), oTransition.getTargetNode());
//            }
          }
        }
        // add transition only if resulting domain is not empty!
        if(bResult == false)
        {
          removeTransition(oTransition);
        }
        else
        {
          colNodes.add(oTransition.getTargetNode());
        }
      }
    }
    return colNodes;
  }
View Full Code Here

Examples of net.sf.parteg.base.testcasetree.generated.TCGTransition

     
      // copy all parameters of the predecessor
      TCGParameterHelperClass.copyParameters(in_oTCGNode, oNewTCGNode);
     
      // set name of the new connecting transition
      TCGTransition oTCGTransition = oNewTCGNode.getIncomingTransitions().get(0);
      oTCGTransition.setName(in_sTransitionNamePrefix + "_"
          + getTestCaseGraph().getTransitions().size());
      return oTCGTransition;
    }
  }
View Full Code Here

Examples of net.sf.parteg.base.testcasetree.generated.TCGTransition

          else if(oAtom.getElement() instanceof Property)
          {
            if(in_oBackTrackStartNode.getIncomingTransitions().size() == 1)
            {
              Property oProperty = (Property)oAtom.getElement();
              TCGTransition oTransition = findNextPrecedingTransition(in_oCurrentBackTrackNode.getIncomingTransitions().get(0), oProperty);
              if(oTransition != null) // is there a next preceding transition ?
              {
                // TODO ### future work: sort elements in expressions only if needed?
                ArrayList<TCGOCLExpression> colNewExpressions = new ArrayList<TCGOCLExpression>();
                boolean bConditionsAreConflicting = connectPreconditionAndASetOfPostconditions(
                    in_oExpression, oProperty, oTransition.getPostcondition(), colNewExpressions);
                if(bConditionsAreConflicting)
                  return false;
               
                // TODO ### hier bei einfacher Wahrheit der Aussage auch anderen Bestandteile der Konjunktion pr�fen
                for(TCGOCLExpression oNewExpression : colNewExpressions)
                {
                  return adaptDomainForNonPostcondition(oNewExpression, in_oBackTrackStartNode, oTransition.getSourceNode());
                }
              }
              else
                return false;
            }
View Full Code Here

Examples of net.sf.parteg.base.testcasetree.generated.TCGTransition

   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @generated
   */
  public void setDefiningTransition(TCGTransition newDefiningTransition) {
    TCGTransition oldDefiningTransition = definingTransition;
    definingTransition = newDefiningTransition;
    if (eNotificationRequired())
      eNotify(new ENotificationImpl(this, Notification.SET, GeneratedPackage.TCG_COMPLEX_PARAMETER__DEFINING_TRANSITION, oldDefiningTransition, definingTransition));
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.