END_TEST START_TEST (test_KineticLaw_getParameterById) { Parameter_t *k1 = Parameter_create(2, 4); Parameter_t *k2 = Parameter_create(2, 4); Parameter_setId(k1, "k1"); Parameter_setId(k2, "k2"); Parameter_setValue(k1, 3.14); Parameter_setValue(k2, 2.72); KineticLaw_addParameter(kl, k1); KineticLaw_addParameter(kl, k2); Parameter_free(k1); Parameter_free(k2); fail_unless( KineticLaw_getNumParameters(kl) == 2 ); k1 = KineticLaw_getParameterById(kl, "k1"); k2 = KineticLaw_getParameterById(kl, "k2"); fail_unless( !strcmp(Parameter_getId(k1), "k1") ); fail_unless( !strcmp(Parameter_getId(k2), "k2") ); fail_unless( Parameter_getValue(k1) == 3.14 ); fail_unless( Parameter_getValue(k2) == 2.72 ); }
END_TEST START_TEST (test_L3_KineticLaw_addParameter1) { KineticLaw_t *kl = KineticLaw_create(3, 1); Parameter_t *p = Parameter_create(3, 1); int i = KineticLaw_addParameter(KL, p); fail_unless( i == LIBSBML_INVALID_OBJECT); Parameter_setId(p, "p"); i = KineticLaw_addParameter(KL, p); fail_unless( i == LIBSBML_OPERATION_SUCCESS); fail_unless( KineticLaw_getNumParameters(KL) == 1); fail_unless( KineticLaw_getNumLocalParameters(KL) == 1); fail_unless( KineticLaw_getNumParameters(kl) == 0); fail_unless( KineticLaw_getNumLocalParameters(kl) == 0); i = KineticLaw_addParameter(kl, p); fail_unless( i == LIBSBML_OPERATION_SUCCESS); fail_unless( KineticLaw_getNumParameters(KL) == 1); fail_unless( KineticLaw_getNumLocalParameters(KL) == 1); fail_unless( KineticLaw_getNumParameters(kl) == 1); fail_unless( KineticLaw_getNumLocalParameters(kl) == 1); Parameter_free(p); KineticLaw_free(kl); }
END_TEST START_TEST (test_L3_KineticLaw_addParameter2) { KineticLaw_t *kl = KineticLaw_create(3, 1); LocalParameter_t *lp = LocalParameter_create(3, 1); LocalParameter_t *lp1 = LocalParameter_create(3, 1); int i = KineticLaw_addLocalParameter(kl, lp); fail_unless( i == LIBSBML_INVALID_OBJECT); LocalParameter_setId(lp, "p"); LocalParameter_setId(lp1, "p1"); i = KineticLaw_addLocalParameter(kl, lp); fail_unless( i == LIBSBML_OPERATION_SUCCESS); fail_unless( KineticLaw_getNumParameters(kl) == 1); fail_unless( KineticLaw_getNumLocalParameters(kl) == 1); i = KineticLaw_addParameter(kl, (Parameter_t *)lp1); fail_unless( i == LIBSBML_OPERATION_SUCCESS); fail_unless( KineticLaw_getNumParameters(kl) == 2); fail_unless( KineticLaw_getNumLocalParameters(kl) == 2); LocalParameter_free(lp); LocalParameter_free(lp1); KineticLaw_free(kl); }
END_TEST START_TEST (test_KineticLaw_addParameter) { Parameter_t * p = Parameter_create(2, 4); Parameter_setId(p, "p"); KineticLaw_addParameter(kl, p); fail_unless( KineticLaw_getNumParameters(kl) == 1 ); Parameter_free(p); }
END_TEST START_TEST (test_KineticLaw_addParameter4) { KineticLaw_t *kl = KineticLaw_create(2, 2); Parameter_t *p = NULL; int i = KineticLaw_addParameter(kl, p); fail_unless( i == LIBSBML_OPERATION_FAILED); fail_unless( KineticLaw_getNumParameters(kl) == 0); KineticLaw_free(kl); }
END_TEST START_TEST (test_KineticLaw_addParameter3) { KineticLaw_t *kl = KineticLaw_create(2, 2); Parameter_t *p = Parameter_create(1, 2); Parameter_setId(p, "p"); int i = KineticLaw_addParameter(kl, p); fail_unless( i == LIBSBML_LEVEL_MISMATCH); fail_unless( KineticLaw_getNumParameters(kl) == 0); Parameter_free(p); KineticLaw_free(kl); }