END_TEST START_TEST (test_ListOf_clear) { ListOf_t *lo = (ListOf_t*) ListOf_create(2,4); SBase_t *sp = (SBase_t*)Species_create(2, 4); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); fail_unless( ListOf_size(lo) == 5 ); /* clear and delete */ ListOf_clear(lo, 1); fail_unless( ListOf_size(lo) == 0 ); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_appendAndOwn(lo, sp); fail_unless( ListOf_size(lo) == 5 ); /* delete each item */ SBase_t *elem; elem = ListOf_get(lo, 0); Species_free((Species_t*) elem); elem = ListOf_get(lo, 1); Species_free((Species_t*) elem); elem = ListOf_get(lo, 2); Species_free((Species_t*) elem); elem = ListOf_get(lo, 3); Species_free((Species_t*) elem); elem = ListOf_get(lo, 4); Species_free((Species_t*) elem); /* clear only */ ListOf_clear(lo, 0); fail_unless( ListOf_size(lo) == 0 ); ListOf_free(lo); }
END_TEST START_TEST (test_Species_createWithNS ) { XMLNamespaces_t *xmlns = XMLNamespaces_create(); XMLNamespaces_add(xmlns, "http://www.sbml.org", "testsbml"); SBMLNamespaces_t *sbmlns = SBMLNamespaces_create(2,1); SBMLNamespaces_addNamespaces(sbmlns,xmlns); Species_t *object = Species_createWithNS (sbmlns); fail_unless( SBase_getTypeCode ((SBase_t *) object) == SBML_SPECIES ); fail_unless( SBase_getMetaId ((SBase_t *) object) == NULL ); fail_unless( SBase_getNotes ((SBase_t *) object) == NULL ); fail_unless( SBase_getAnnotation((SBase_t *) object) == NULL ); fail_unless( SBase_getLevel ((SBase_t *) object) == 2 ); fail_unless( SBase_getVersion ((SBase_t *) object) == 1 ); fail_unless( Species_getNamespaces (object) != NULL ); fail_unless( XMLNamespaces_getLength(Species_getNamespaces(object)) == 2 ); Species_free(object); XMLNamespaces_free(xmlns); SBMLNamespaces_free(sbmlns); }
END_TEST /* since the setId function has been used as an * alias for setName we cant require it to only * be used on a L2 model START_TEST (test_Species_setId1) { int i = Species_setId(C, "cell"); fail_unless( i == LIBSBML_UNEXPECTED_ATTRIBUTE ); fail_unless( !Species_isSetId(C) ); } END_TEST */ START_TEST (test_Species_setId2) { Species_t *c = Species_create(2, 2); int i = Species_setId(c, "1cell"); fail_unless( i == LIBSBML_INVALID_ATTRIBUTE_VALUE ); fail_unless( !Species_isSetId(c) ); Species_free(c); }
END_TEST START_TEST (test_L3_Species_hasRequiredAttributes ) { Species_t *s = Species_create (3, 1); fail_unless ( !Species_hasRequiredAttributes(s)); Species_setId(s, "id"); fail_unless ( !Species_hasRequiredAttributes(s)); Species_setCompartment(s, "cell"); fail_unless ( !Species_hasRequiredAttributes(s)); Species_setHasOnlySubstanceUnits(s, 0); fail_unless ( !Species_hasRequiredAttributes(s)); Species_setBoundaryCondition(s, 0); fail_unless ( !Species_hasRequiredAttributes(s)); Species_setConstant(s, 0); fail_unless ( Species_hasRequiredAttributes(s)); Species_free(s); }
END_TEST START_TEST (test_L3_Species_free_NULL) { Species_free(NULL); }
END_TEST START_TEST (test_ListOf_append) { Model_t *m = Model_create(2, 4); Model_createCompartment(m); ListOf_t *loc = Model_getListOfCompartments(m); fail_unless(ListOf_size(loc) == 1); SBase_t *c = (SBase_t*)Compartment_create(2, 4); int i = ListOf_append(loc, c); fail_unless(i == LIBSBML_OPERATION_SUCCESS); fail_unless(ListOf_size(loc) == 2); SBase_t *sp = (SBase_t*)Species_create(2, 4); i = ListOf_append(loc, sp); fail_unless(i == LIBSBML_INVALID_OBJECT); fail_unless(ListOf_size(loc) == 2); Model_free(m); Species_free((Species_t*)sp); }
END_TEST START_TEST (test_Species_setSpatialSizeUnits) { Species_t *s = Species_create(2, 1); const char *units = "volume"; Species_setSpatialSizeUnits(s, units); fail_unless( !strcmp(Species_getSpatialSizeUnits(s), units) ); fail_unless( Species_isSetSpatialSizeUnits(s) ); if (Species_getSpatialSizeUnits(s) == units) { fail("Species_setSpatialSizeUnits(...) did not make a copy of string."); } /* Reflexive case (pathological) */ Species_setSpatialSizeUnits(s, Species_getSpatialSizeUnits(s)); fail_unless( !strcmp(Species_getSpatialSizeUnits(s), units) ); Species_setSpatialSizeUnits(s, NULL); fail_unless( !Species_isSetSpatialSizeUnits(s) ); if (Species_getSpatialSizeUnits(s) != NULL) { fail("Species_setSpatialSizeUnits(S, NULL) did not clear string."); } Species_free(s); }
END_TEST START_TEST (test_Reaction_addProductBySpecies) { Species_t *s = Species_create(2, 4); Species_setId(s, "s"); Reaction_addProductBySpecies(R, s, 2.0, "sr", 0); fail_unless( Reaction_getNumReactants(R) == 0 ); fail_unless( Reaction_getNumProducts (R) == 1 ); fail_unless( Reaction_getNumModifiers(R) == 0 ); SpeciesReference_t *sr = Reaction_getProduct(R, 0); fail_unless(!strcmp(SpeciesReference_getSpecies(sr), "s")); fail_unless(util_isEqual(SpeciesReference_getStoichiometry(sr), 2.0) == 1); fail_unless(!strcmp(SpeciesReference_getId(sr), "sr")); fail_unless(SpeciesReference_getConstant(sr) == 0); fail_unless(Reaction_addProductBySpecies(R, s, 1.0, "sr", 0) == LIBSBML_DUPLICATE_OBJECT_ID); fail_unless( Reaction_getNumProducts (R) == 1 ); Species_free(s); }
END_TEST START_TEST (test_ListOf_remove) { ListOf_t *lo = (ListOf_t*) ListOf_create(2,4); SBase_t *sp = (SBase_t*)Species_create(2, 4); fail_unless( ListOf_size(lo) == 0 ); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); fail_unless( ListOf_size(lo) == 5 ); SBase_t *elem; elem = ListOf_remove(lo, 0); Species_free((Species_t*) elem); elem = ListOf_remove(lo, 0); Species_free((Species_t*) elem); elem = ListOf_remove(lo, 0); Species_free((Species_t*) elem); elem = ListOf_remove(lo, 0); Species_free((Species_t*) elem); elem = ListOf_remove(lo, 0); Species_free((Species_t*) elem); fail_unless( ListOf_size(lo) == 0 ); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_append(lo, sp); ListOf_appendAndOwn(lo, sp); fail_unless( ListOf_size(lo) == 5 ); ListOf_free(lo); }
END_TEST START_TEST (test_L3_Species_initDefaults) { Species_t *s = Species_create(3,1); fail_unless( Species_getId (s) == NULL ); fail_unless( Species_getName (s) == NULL ); fail_unless( Species_getCompartment (s) == NULL ); fail_unless( util_isNaN(Species_getInitialAmount (s)) ); fail_unless( util_isNaN(Species_getInitialConcentration (s)) ); fail_unless( Species_getSubstanceUnits (s) == NULL ); fail_unless( Species_getHasOnlySubstanceUnits(s) == 0 ); fail_unless( Species_getBoundaryCondition(s) == 0 ); fail_unless( Species_getConstant(s) == 0 ); fail_unless( Species_getConversionFactor (s) == NULL ); fail_unless( !Species_isSetId (s) ); fail_unless( !Species_isSetName (s) ); fail_unless( !Species_isSetCompartment (s) ); fail_unless( !Species_isSetInitialAmount (s) ); fail_unless( !Species_isSetInitialConcentration (s) ); fail_unless( !Species_isSetSubstanceUnits (s) ); fail_unless( !Species_isSetHasOnlySubstanceUnits(s) ); fail_unless( !Species_isSetBoundaryCondition(s) ); fail_unless( !Species_isSetConstant(s) ); fail_unless( !Species_isSetConversionFactor (s) ); Species_initDefaults(s); fail_unless( Species_getId (s) == NULL ); fail_unless( Species_getName (s) == NULL ); fail_unless( Species_getCompartment (s) == NULL ); fail_unless( util_isNaN(Species_getInitialAmount (s)) ); fail_unless( util_isNaN(Species_getInitialConcentration (s)) ); fail_unless( !strcmp(Species_getSubstanceUnits (s),"mole" )); fail_unless( Species_getHasOnlySubstanceUnits(s) == 0 ); fail_unless( Species_getBoundaryCondition(s) == 0 ); fail_unless( Species_getConstant(s) == 0 ); fail_unless( Species_getConversionFactor (s) == NULL ); fail_unless( !Species_isSetId (s) ); fail_unless( !Species_isSetName (s) ); fail_unless( !Species_isSetCompartment (s) ); fail_unless( !Species_isSetInitialAmount (s) ); fail_unless( !Species_isSetInitialConcentration (s) ); fail_unless( Species_isSetSubstanceUnits (s) ); fail_unless( Species_isSetHasOnlySubstanceUnits(s) ); fail_unless( Species_isSetBoundaryCondition(s) ); fail_unless( Species_isSetConstant(s) ); fail_unless( !Species_isSetConversionFactor (s) ); Species_free(s); }
END_TEST START_TEST (test_L3_Species_createWithNS ) { XMLNamespaces_t *xmlns = XMLNamespaces_create(); XMLNamespaces_add(xmlns, "http://www.sbml.org", "testsbml"); SBMLNamespaces_t *sbmlns = SBMLNamespaces_create(3,1); SBMLNamespaces_addNamespaces(sbmlns,xmlns); Species_t *s = Species_createWithNS (sbmlns); fail_unless( SBase_getTypeCode ((SBase_t *) s) == SBML_SPECIES ); fail_unless( SBase_getMetaId ((SBase_t *) s) == NULL ); fail_unless( SBase_getNotes ((SBase_t *) s) == NULL ); fail_unless( SBase_getAnnotation((SBase_t *) s) == NULL ); fail_unless( SBase_getLevel ((SBase_t *) s) == 3 ); fail_unless( SBase_getVersion ((SBase_t *) s) == 1 ); fail_unless( Species_getNamespaces (s) != NULL ); fail_unless( XMLNamespaces_getLength(Species_getNamespaces(s)) == 2 ); fail_unless( Species_getId (s) == NULL ); fail_unless( Species_getName (s) == NULL ); fail_unless( Species_getCompartment (s) == NULL ); fail_unless( util_isNaN(Species_getInitialAmount (s)) ); fail_unless( util_isNaN(Species_getInitialConcentration (s)) ); fail_unless( Species_getSubstanceUnits (s) == NULL ); fail_unless( Species_getHasOnlySubstanceUnits(s) == 0 ); fail_unless( Species_getBoundaryCondition(s) == 0 ); fail_unless( Species_getConstant(s) == 0 ); fail_unless( Species_getConversionFactor (s) == NULL ); fail_unless( !Species_isSetId (s) ); fail_unless( !Species_isSetName (s) ); fail_unless( !Species_isSetCompartment (s) ); fail_unless( !Species_isSetInitialAmount (s) ); fail_unless( !Species_isSetInitialConcentration (s) ); fail_unless( !Species_isSetSubstanceUnits (s) ); fail_unless( !Species_isSetHasOnlySubstanceUnits(s) ); fail_unless( !Species_isSetBoundaryCondition(s) ); fail_unless( !Species_isSetConstant(s) ); fail_unless( !Species_isSetConversionFactor (s) ); Species_free(s); XMLNamespaces_free(xmlns); SBMLNamespaces_free(sbmlns); }
END_TEST START_TEST (test_Species_setConstant2) { Species_t *c = Species_create(2, 2); int i = Species_setConstant(c, 1); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( Species_getConstant(c) == 1 ); Species_free(c); }
END_TEST START_TEST (test_Species_setCharge3) { Species_t *c = Species_create(2, 1); int i = Species_unsetCharge(c); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( !Species_isSetCharge(c)); Species_free(c); }
END_TEST START_TEST (test_Species_setSpatialSizeUnits4) { Species_t *c = Species_create(2, 2); int i = Species_setSpatialSizeUnits(c, NULL); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( !Species_isSetSpatialSizeUnits(c) ); Species_free(c); }
END_TEST START_TEST (test_Species_setCharge2) { Species_t *c = Species_create(2, 2); int i = Species_setCharge(c, 4); fail_unless( i == LIBSBML_UNEXPECTED_ATTRIBUTE ); fail_unless( !Species_isSetCharge(c)); Species_free(c); }
END_TEST START_TEST (test_Species_setSpatialSizeUnits2) { Species_t *c = Species_create(2, 2); int i = Species_setSpatialSizeUnits(c, "1cell"); fail_unless( i == LIBSBML_INVALID_ATTRIBUTE_VALUE ); fail_unless( !Species_isSetSpatialSizeUnits(c) ); Species_free(c); }
END_TEST START_TEST (test_Species_setId3) { Species_t *c = Species_create(2, 2); int i = Species_setId(c, "cell"); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( Species_isSetId(c) ); fail_unless( !strcmp(Species_getId(c), "cell" )); Species_free(c); }
END_TEST START_TEST (test_Species_setSpatialSizeUnits3) { Species_t *c = Species_create(2, 2); int i = Species_setSpatialSizeUnits(c, "mole"); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( !strcmp(Species_getSpatialSizeUnits(c), "mole") ); fail_unless( Species_isSetSpatialSizeUnits(c) ); Species_free(c); }
END_TEST START_TEST (test_Species_setName2) { Species_t *c = Species_create(2, 2); int i = Species_setName(c, "1cell"); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( Species_isSetName(c) ); i = Species_unsetName(c); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( !Species_isSetName(c) ); Species_free(c); }
END_TEST START_TEST (test_Species_setSpeciesType2) { Species_t *c = Species_create(2, 2); int i = Species_setSpeciesType(c, "1cell"); fail_unless( i == LIBSBML_INVALID_ATTRIBUTE_VALUE ); fail_unless( !Species_isSetSpeciesType(c) ); i = Species_unsetSpeciesType(c); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( !Species_isSetSpeciesType(c) ); Species_free(c); }
END_TEST START_TEST (test_Species_setHasOnlySubstanceUnits2) { Species_t *c = Species_create(2, 2); int i = Species_setHasOnlySubstanceUnits(c, 0); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( Species_getHasOnlySubstanceUnits(c) == 0 ); i = Species_setHasOnlySubstanceUnits(c, 1); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( Species_getHasOnlySubstanceUnits(c) == 1 ); Species_free(c); }
END_TEST START_TEST (test_Species_setInitialAmount2) { Species_t *c = Species_create(2, 2); int i = Species_setInitialAmount(c, 4); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( Species_getInitialAmount(c) == 4.0 ); fail_unless( Species_isSetInitialAmount(c)); i = Species_unsetInitialAmount(c); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( !Species_isSetInitialAmount(c)); Species_free(c); }
END_TEST //START_TEST (test_Species_createWith) //{ // Species_t *s = Species_createWith("Ca", "Calcium"); // // // fail_unless( SBase_getTypeCode ((SBase_t *) s) == SBML_SPECIES ); // fail_unless( SBase_getMetaId ((SBase_t *) s) == NULL ); // fail_unless( SBase_getNotes ((SBase_t *) s) == NULL ); // fail_unless( SBase_getAnnotation((SBase_t *) s) == NULL ); // // fail_unless( !strcmp(Species_getName (s), "Calcium" ) ); // fail_unless( Species_getSpatialSizeUnits (s) == NULL ); // fail_unless( Species_getHasOnlySubstanceUnits(s) == 0 ); // fail_unless( Species_getConstant (s) == 0 ); // // fail_unless( !strcmp(Species_getId (s), "Ca" ) ); // // fail_unless( Species_isSetId (s) ); // fail_unless( Species_isSetName (s) ); // fail_unless( ! Species_isSetCompartment (s) ); // fail_unless( ! Species_isSetSubstanceUnits (s) ); // fail_unless( ! Species_isSetSpatialSizeUnits (s) ); // fail_unless( ! Species_isSetUnits (s) ); // fail_unless( ! Species_isSetInitialAmount (s) ); // fail_unless( ! Species_isSetInitialConcentration (s) ); // fail_unless( ! Species_isSetCharge (s) ); // // Species_free(s); //} //END_TEST START_TEST (test_Species_free_NULL) { Species_free(NULL); }
END_TEST START_TEST (test_Reaction_addModifierBySpecies) { Species_t *s = Species_create(2, 4); Species_setId(s, "s"); Reaction_addModifierBySpecies(R, s, "sr"); fail_unless( Reaction_getNumReactants(R) == 0 ); fail_unless( Reaction_getNumProducts (R) == 0 ); fail_unless( Reaction_getNumModifiers(R) == 1 ); SpeciesReference_t *sr = Reaction_getModifier(R, 0); fail_unless(!strcmp(SpeciesReference_getSpecies(sr), "s")); fail_unless(!strcmp(SpeciesReference_getId(sr), "sr")); fail_unless(Reaction_addModifierBySpecies(R, s, "sr") == LIBSBML_DUPLICATE_OBJECT_ID); fail_unless( Reaction_getNumModifiers (R) == 1 ); Species_free(s); }
void SpeciesTest_teardown (void) { Species_free(S); }
void SpeciesTest1_teardown (void) { Species_free(C); }