public MetabolicReaction parseTwoSidedReaction(
      PreparsedReaction preparsed, String[] equationSides) throws UnparsableReactionError {

    Matcher reactionCompartment = REACTION_COMPARTMENT.matcher(equationSides[0]);

    MetabolicReaction rxn = getReaction(preparsed);

    Compartment defaultCompartment = Organelle.CYTOPLASM;

    if (reactionCompartment.find()) {
      defaultCompartment = resolver.getCompartment(reactionCompartment.group(1));
      equationSides[0] = reactionCompartment.replaceAll("");
    }

    for (MetabolicParticipantImplementation p :
        parseParticipants(equationSides[0], defaultCompartment, preparsed)) {
      rxn.addReactant(p);
    }
    for (MetabolicParticipantImplementation p :
        parseParticipants(equationSides[1], defaultCompartment, preparsed)) {
      rxn.addProduct(p);
    }

    return rxn;
  }
Exemple #2
0
  @Test
  public void testAddProduct_Metabolite() throws Exception {
    MetabolicReaction mock = mock(MetabolicReaction.class);
    MetabolicReaction rxn = new BiochemRxnImpl(mock);

    Metabolite m = mock(Metabolite.class);
    rxn.addProduct(m);
    verify(mock).addProduct(m);
  }
Exemple #3
0
  @Test
  public void testAddProduct() throws Exception {
    MetabolicReaction mock = mock(MetabolicReaction.class);
    MetabolicReaction rxn = new BiochemRxnImpl(mock);

    MetabolicParticipant p = mock(MetabolicParticipant.class);

    rxn.addProduct(p);
    verify(mock).addProduct(p);
  }