END_TEST START_TEST (test_Event_addEventAssignment4) { Event_t *e = Event_create(2, 2); EventAssignment_t *ea = EventAssignment_create(2, 2); EventAssignment_setVariable(ea, "c"); EventAssignment_setMath(ea, SBML_parseFormula("a-n")); EventAssignment_t *ea1 = EventAssignment_create(2, 2); EventAssignment_setVariable(ea1, "c"); EventAssignment_setMath(ea1, SBML_parseFormula("a-n")); int i = Event_addEventAssignment(e, ea); fail_unless( i == LIBSBML_OPERATION_SUCCESS); fail_unless( Event_getNumEventAssignments(e) == 1); i = Event_addEventAssignment(e, ea1); fail_unless( i == LIBSBML_DUPLICATE_OBJECT_ID); fail_unless( Event_getNumEventAssignments(e) == 1); EventAssignment_free(ea); EventAssignment_free(ea1); Event_free(e); }
END_TEST START_TEST (test_EventAssignment_setVariable) { const char *variable = "k2"; EventAssignment_setVariable(EA, variable); fail_unless( !strcmp(EventAssignment_getVariable(EA), variable) ); fail_unless( EventAssignment_isSetVariable(EA) ); if (EventAssignment_getVariable(EA) == variable) { fail("EventAssignment_setVariable(...) did not make a copy of string."); } /* Reflexive case (pathological) */ EventAssignment_setVariable(EA, EventAssignment_getVariable(EA)); fail_unless( !strcmp(EventAssignment_getVariable(EA), variable) ); EventAssignment_setVariable(EA, NULL); fail_unless( !EventAssignment_isSetVariable(EA) ); if (EventAssignment_getVariable(EA) != NULL) { fail("EventAssignment_setVariable(EA, NULL) did not clear string."); } }
END_TEST START_TEST (test_EventAssignment_unsetVariable) { const char *variable = "k2"; EventAssignment_setVariable(EA, variable); fail_unless( !strcmp(EventAssignment_getVariable(EA), variable) ); fail_unless( EventAssignment_isSetVariable(EA) ); if (EventAssignment_getVariable(EA) == variable) { fail("EventAssignment_setVariable(...) did not make a copy of string."); } EventAssignment_unsetVariable(EA); fail_unless( !EventAssignment_isSetVariable(EA) ); if (EventAssignment_getVariable(EA) != NULL) { fail("EventAssignment_unsetVariable(EA) did not clear string."); } }
END_TEST START_TEST (test_EventAssignment_setVariable2) { const char *id = "e1"; int i = EventAssignment_setVariable(E, id); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( !strcmp(EventAssignment_getVariable(E), id) ); fail_unless( EventAssignment_isSetVariable(E) ); i = EventAssignment_setVariable(E, NULL); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( !EventAssignment_isSetVariable(E) ); }
END_TEST START_TEST (test_Event_addEventAssignment2) { Event_t *e = Event_create(2, 2); EventAssignment_t *ea = EventAssignment_create(2, 3); EventAssignment_setVariable(ea, "f"); EventAssignment_setMath(ea, SBML_parseFormula("a-n")); int i = Event_addEventAssignment(e, ea); fail_unless( i == LIBSBML_VERSION_MISMATCH); fail_unless( Event_getNumEventAssignments(e) == 0); EventAssignment_free(ea); Event_free(e); }