Skip to content
Snippets Groups Projects
Commit 67e137e8 authored by Piotr Gawron's avatar Piotr Gawron
Browse files

empty kinetic law was throwing an exception

parent bcef5c80
No related branches found
No related tags found
2 merge requests!630WIP: Resolve "The privileges of a new user are not saved in some cases",!521Resolve "SBML upload error, files from BioModels"
Pipeline #7895 failed
......@@ -431,7 +431,11 @@ public class SbmlReactionParser extends SbmlBioEntityParser {
reaction.setIdReaction(sbmlReaction.getId());
reaction.setReversible(sbmlReaction.isReversible());
if (sbmlReaction.getKineticLaw() != null) {
reaction.setKinetics(createMinervaKinetics(sbmlReaction.getKineticLaw()));
if (sbmlReaction.getKineticLaw().getMath() == null) {
logger.warn(eu.getElementTag(reaction) + "Reaction contains empty kinetic law.");
} else {
reaction.setKinetics(createMinervaKinetics(sbmlReaction.getKineticLaw()));
}
}
for (SpeciesReference reactant : sbmlReaction.getListOfReactants()) {
Species element = minervaModel.getElementByElementId(reactant.getSpecies());
......
......@@ -233,4 +233,19 @@ public class SbmlReactionParserTest {
}
}
@Test
public void testParseReactionWithEmptyKinetics() throws Exception {
try {
Model model = parser
.createModel(new ConverterParams()
.filename("testFiles/small/reaction/reaction_with_empty_kinetics.xml"));
Reaction reaction = model.getReactions().iterator().next();
assertNotNull(reaction);
assertTrue(reaction instanceof Reaction);
} catch (Exception e) {
e.printStackTrace();
throw e;
}
}
}
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<sbml xmlns="http://www.sbml.org/sbml/level2" level="2" version="1">
<model>
<notes>
</notes>
<annotation>
</annotation>
<listOfUnitDefinitions>
<unitDefinition id="substance" metaid="metaid_0000023"
name="micromole (default)">
<notes>
</notes>
<listOfUnits>
<unit kind="mole" metaid="_289328" scale="-6" />
</listOfUnits>
</unitDefinition>
<unitDefinition id="time" metaid="metaid_0000024"
name="heure (default)">
<notes>
</notes>
<listOfUnits>
<unit kind="second" metaid="_289340" multiplier="3600" />
</listOfUnits>
</unitDefinition>
</listOfUnitDefinitions>
<listOfCompartments>
<compartment id="default" metaid="_741863" size="1E-15" />
<compartment id="CYTOPLASM" metaid="_741901"
outside="default" size="1E-15">
</compartment>
<compartment id="compartment_0000004"
metaid="metaid_0000026" name="NUCLEUS" outside="CYTOPLASM"
size="1E-15">
</compartment>
</listOfCompartments>
<listOfSpecies>
<species boundaryCondition="true" compartment="default"
constant="true" id="EmptySet" initialAmount="0" metaid="_741921">
</species>
<species compartment="CYTOPLASM" id="M"
initialConcentration="0.1" metaid="_741942" name="PER mRNA">
</species>
<species compartment="CYTOPLASM" id="P0"
initialConcentration="0.25" metaid="_741962"
name="unphosphorylated PER">
</species>
<species compartment="CYTOPLASM" id="P1"
initialConcentration="0.25" metaid="_741981"
name="monophosphorylated PER">
</species>
<species compartment="CYTOPLASM" id="P2"
initialConcentration="0.25" metaid="_742001"
name="biphosphorylated PER">
</species>
<species compartment="compartment_0000004" id="Pn"
initialConcentration="0.25" metaid="_742021" name="nuclear PER">
</species>
<species compartment="CYTOPLASM" id="Pt"
initialConcentration="1" metaid="_742041" name="total PER">
</species>
</listOfSpecies>
<listOfReactions>
<reaction id="rM" metaid="_742062"
name="transcription of PER" reversible="false">
<listOfReactants>
<speciesReference metaid="_289353"
species="EmptySet" />
</listOfReactants>
<listOfProducts>
<speciesReference metaid="_289365" species="M" />
</listOfProducts>
<listOfModifiers>
<modifierSpeciesReference metaid="_289377"
species="Pn" />
</listOfModifiers>
<kineticLaw />
</reaction>
</listOfReactions>
</model>
</sbml>
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment