def test_save_state_existing_metabolite(self): metabolite = Metabolite(id="m1", charge=1, name="old name", formula="O2", compartment="c") model = Model() model.gem_add_metabolites((metabolite, )) widget = MetaboliteAttributesDisplayWidget() widget.set_item(metabolite, model) new_id = "New_id" new_name = "New name" new_charge = 3. new_compartment = "m" new_formula = "H2O" widget.iDLineEdit.setText(new_id) widget.nameLineEdit.setText(new_name) widget.chargeSpinBox.setValue(new_charge) widget.compartmentComboBox.addItem(new_compartment) widget.compartmentComboBox.setCurrentIndex( widget.compartmentComboBox.count() - 1) widget.formulaLineEdit.setText(new_formula) widget.save_state() assert metabolite.id == new_id assert metabolite.name == new_name assert metabolite.charge == new_charge assert metabolite.compartment == new_compartment assert metabolite.formula == new_formula assert model.metabolites.has_id(new_id)
def test_add_metabolites(self): model = Model() metabolite = Metabolite("m1", compartment="c") model.gem_add_metabolites((metabolite,)) assert metabolite in model.metabolites assert metabolite in model.QtMetaboliteTable.get_items() assert "c" in model.gem_compartments