END_TEST START_TEST (test_Reaction_getProductById) { SpeciesReference_t *sr1 = SpeciesReference_create(2, 4); SpeciesReference_setSpecies(sr1, "P1"); SpeciesReference_t *sr2 = SpeciesReference_create(2, 4); SpeciesReference_setSpecies(sr2, "P1"); Reaction_addProduct(R, sr1); Reaction_addProduct(R, sr2); fail_unless( Reaction_getNumReactants(R) == 0 ); fail_unless( Reaction_getNumProducts (R) == 2 ); fail_unless( Reaction_getNumModifiers(R) == 0 ); fail_unless( Reaction_getProductBySpecies(R, "P1") != sr1 ); fail_unless( Reaction_getProductBySpecies(R, "P2") != sr2 ); fail_unless( Reaction_getProductBySpecies(R, "P3") == NULL ); SpeciesReference_free(sr1); SpeciesReference_free(sr2); }
END_TEST START_TEST (test_Reaction_getProduct) { SpeciesReference_t *sr1 = SpeciesReference_create(2, 4); SpeciesReference_t *sr2 = SpeciesReference_create(2, 4); SpeciesReference_setSpecies(sr1, "P1"); SpeciesReference_setSpecies(sr2, "P2"); Reaction_addProduct(R, sr1); Reaction_addProduct(R, sr2); SpeciesReference_free(sr1); SpeciesReference_free(sr2); fail_unless( Reaction_getNumReactants(R) == 0 ); fail_unless( Reaction_getNumProducts (R) == 2 ); fail_unless( Reaction_getNumModifiers(R) == 0 ); sr1 = Reaction_getProduct(R, 0); sr2 = Reaction_getProduct(R, 1); fail_unless( !strcmp(SpeciesReference_getSpecies(sr1), "P1") ); fail_unless( !strcmp(SpeciesReference_getSpecies(sr2), "P2") ); }
END_TEST START_TEST (test_Reaction_addProduct1) { Reaction_t *m = Reaction_create(2, 2); SpeciesReference_t *p = SpeciesReference_create(2, 2); SpeciesReference_t *p1 = SpeciesReference_create(2, 2); SpeciesReference_setSpecies(p1, "k"); SpeciesReference_setId(p1, "k1"); int i = Reaction_addProduct(m, p); fail_unless( i == LIBSBML_INVALID_OBJECT); SpeciesReference_setSpecies(p, "k"); SpeciesReference_setId(p, "k1"); i = Reaction_addProduct(m, p); fail_unless( i == LIBSBML_OPERATION_SUCCESS); fail_unless( Reaction_getNumProducts(m) == 1); i = Reaction_addProduct(m, p1); fail_unless( i == LIBSBML_DUPLICATE_OBJECT_ID); fail_unless( Reaction_getNumProducts(m) == 1); SpeciesReference_free(p); SpeciesReference_free(p1); Reaction_free(m); }
END_TEST START_TEST (test_Reaction_addProduct4) { Reaction_t *m = Reaction_create(2, 2); SpeciesReference_t *p = NULL; int i = Reaction_addProduct(m, p); fail_unless( i == LIBSBML_OPERATION_FAILED); fail_unless( Reaction_getNumProducts(m) == 0); Reaction_free(m); }
END_TEST START_TEST (test_Reaction_addProduct) { SpeciesReference_t *sr = SpeciesReference_create(2, 4); SpeciesReference_setSpecies(sr, "s"); Reaction_addProduct(R, sr); fail_unless( Reaction_getNumReactants(R) == 0 ); fail_unless( Reaction_getNumProducts (R) == 1 ); fail_unless( Reaction_getNumModifiers(R) == 0 ); SpeciesReference_free(sr); }
END_TEST START_TEST (test_Reaction_addProduct3) { Reaction_t *m = Reaction_create(2, 2); SpeciesReference_t *p = SpeciesReference_create(1, 2); SpeciesReference_setSpecies(p, "k"); int i = Reaction_addProduct(m, p); fail_unless( i == LIBSBML_LEVEL_MISMATCH); fail_unless( Reaction_getNumProducts(m) == 0); SpeciesReference_free(p); Reaction_free(m); }