def test_clean(self): from libcellml import Component, Model, Units, Variable, Printer model = Model() c1 = Component('c1') c2 = Component() c2.setId('c2') c3 = Component() c4 = Component() u1 = Units('used') u2 = Units() u2.setId('u2') u3 = Units() v = Variable('x') model.addComponent(c1) model.addComponent(c2) model.addComponent(c3) model.addComponent(c4) model.addUnits(u1) model.addUnits(u2) model.addUnits(u3) c3.addVariable(v) self.assertEqual(4, model.componentCount()) self.assertEqual(3, model.unitsCount()) # Call the Model.clean() function to remove the empty items (c4 and u3). model.clean() self.assertEqual(3, model.componentCount()) self.assertEqual(2, model.unitsCount())
def test_add_component(self): from libcellml import Model, Component m = Model() c = Component() self.assertEqual(0, m.componentCount()) m.addComponent(c) self.assertTrue(m.containsComponent(c)) self.assertEqual(1, m.componentCount())
def test_parent(self): from libcellml import Model, Component x = Model("model") self.assertIsNone(x.parent()) c = Component() self.assertIsNone(c.parent()) c.setParent(x) self.assertEqual("model", c.parent().name()) self.assertEqual(0, x.componentCount())
def test_remove_component(self): from libcellml import Model, Component m = Model() c1 = Component() c2 = Component() self.assertEqual(0, m.componentCount()) m.addComponent(c1) m.addComponent(c2) self.assertEqual(2, m.componentCount()) m.removeAllComponents() self.assertEqual(0, m.componentCount()) m.addComponent(c1) m.addComponent(c2) self.assertEqual(2, m.componentCount()) m.removeComponent(c2) self.assertEqual(1, m.componentCount())