END_TEST START_TEST (test_Date_setMonth) { Date_t * date = Date_createFromValues(2005, 12, 30, 12, 15, 45, 1, 2, 0); fail_unless(date != NULL); int i = Date_setMonth(date, 434); fail_unless( i == LIBSBML_INVALID_ATTRIBUTE_VALUE ); fail_unless( Date_getMonth(date) == 1); i = Date_setMonth(date, 12121); fail_unless( i == LIBSBML_INVALID_ATTRIBUTE_VALUE ); fail_unless( Date_getMonth(date) == 1); i = Date_setMonth(date, 11); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( Date_getMonth(date) == 11); fail_unless(!strcmp(Date_getDateAsString(date), "2005-11-30T12:15:45+02:00")); Date_free(date); }
END_TEST START_TEST (test_ModelHistory_addModifiedDate) { ModelHistory_t * history = ModelHistory_create(); fail_unless(history != NULL); fail_unless(ModelHistory_isSetModifiedDate(history) == 0); fail_unless(ModelHistory_getNumModifiedDates(history) == 0); Date_t * date = Date_createFromValues(2005, 12, 30, 12, 15, 45, 1, 2, 0); ModelHistory_addModifiedDate(history, date); Date_free(date); fail_unless(ModelHistory_getNumModifiedDates(history) == 1); fail_unless(ModelHistory_isSetModifiedDate(history) == 1); Date_t * newdate = (Date_t *) List_get(ModelHistory_getListModifiedDates(history), 0); fail_unless(Date_getYear(newdate) == 2005); fail_unless(Date_getMonth(newdate) == 12); fail_unless(Date_getDay(newdate) == 30); fail_unless(Date_getHour(newdate) == 12); fail_unless(Date_getMinute(newdate) == 15); fail_unless(Date_getSecond(newdate) == 45); fail_unless(Date_getSignOffset(newdate) == 1); fail_unless(Date_getHoursOffset(newdate) == 2); fail_unless(Date_getMinutesOffset(newdate) == 0); Date_t * date1 = Date_createFromValues(2008, 11, 2, 16, 42, 40, 1, 2, 0); ModelHistory_addModifiedDate(history, date1); Date_free(date1); fail_unless(ModelHistory_getNumModifiedDates(history) == 2); fail_unless(ModelHistory_isSetModifiedDate(history) == 1); Date_t * newdate1 = ModelHistory_getModifiedDateFromList(history, 1); fail_unless(Date_getYear(newdate1) == 2008); fail_unless(Date_getMonth(newdate1) == 11); fail_unless(Date_getDay(newdate1) == 2); fail_unless(Date_getHour(newdate1) == 16); fail_unless(Date_getMinute(newdate1) == 42); fail_unless(Date_getSecond(newdate1) == 40); fail_unless(Date_getSignOffset(newdate1) == 1); fail_unless(Date_getHoursOffset(newdate1) == 2); fail_unless(Date_getMinutesOffset(newdate1) == 0); ModelHistory_free(history); }
END_TEST START_TEST (test_Date_accessWithNULL) { fail_unless( Date_clone(NULL) == NULL ); fail_unless( Date_createFromString(NULL) == NULL ); // ensure that we don't crash Date_free(NULL); fail_unless( Date_getDateAsString(NULL) == NULL ); fail_unless( Date_getDay(NULL) == SBML_INT_MAX ); fail_unless( Date_getHour(NULL) == SBML_INT_MAX ); fail_unless( Date_getHoursOffset(NULL) == SBML_INT_MAX ); fail_unless( Date_getMinute(NULL) == SBML_INT_MAX ); fail_unless( Date_getMinutesOffset(NULL) == SBML_INT_MAX ); fail_unless( Date_getMonth(NULL) == SBML_INT_MAX ); fail_unless( Date_getSecond(NULL) == SBML_INT_MAX ); fail_unless( Date_getSignOffset(NULL) == SBML_INT_MAX ); fail_unless( Date_getYear(NULL) == SBML_INT_MAX ); fail_unless( Date_representsValidDate(NULL) == 0 ); fail_unless( Date_setDateAsString(NULL, NULL) == LIBSBML_INVALID_OBJECT ); fail_unless( Date_setDay(NULL, 0) == LIBSBML_INVALID_OBJECT ); fail_unless( Date_setHour(NULL, 0) == LIBSBML_INVALID_OBJECT ); fail_unless( Date_setHoursOffset(NULL, 0) == LIBSBML_INVALID_OBJECT ); fail_unless( Date_setMinute(NULL, 0) == LIBSBML_INVALID_OBJECT ); fail_unless( Date_setMinutesOffset(NULL, 0) == LIBSBML_INVALID_OBJECT ); fail_unless( Date_setMonth(NULL, 0) == LIBSBML_INVALID_OBJECT ); fail_unless( Date_setSecond(NULL, 0) == LIBSBML_INVALID_OBJECT ); fail_unless( Date_setSignOffset(NULL, 0) == LIBSBML_INVALID_OBJECT ); fail_unless( Date_setYear(NULL, 0) == LIBSBML_INVALID_OBJECT ); }
END_TEST START_TEST (test_Date_setters) { Date_t * date = Date_createFromValues(2005, 12, 30, 12, 15, 45, 1, 2, 0); fail_unless(date != NULL); Date_setYear(date, 2012); Date_setMonth(date, 3); Date_setDay(date, 28); Date_setHour(date, 23); Date_setMinute(date, 4); Date_setSecond(date, 32); Date_setSignOffset(date, 1); Date_setHoursOffset(date, 2); Date_setMinutesOffset(date, 32); fail_unless(Date_getYear(date) == 2012); fail_unless(Date_getMonth(date) == 3); fail_unless(Date_getDay(date) == 28); fail_unless(Date_getHour(date) == 23); fail_unless(Date_getMinute(date) == 4); fail_unless(Date_getSecond(date) == 32); fail_unless(Date_getSignOffset(date) == 1); fail_unless(Date_getHoursOffset(date) == 2); fail_unless(Date_getMinutesOffset(date) == 32); fail_unless(!strcmp(Date_getDateAsString(date), "2012-03-28T23:04:32+02:32")); Date_free(date); }
END_TEST START_TEST (test_ModelHistory_setModifiedDate) { ModelHistory_t * history = ModelHistory_create(); fail_unless(history != NULL); fail_unless(ModelHistory_isSetModifiedDate(history) == 0); Date_t * date = Date_createFromValues(2005, 12, 30, 12, 15, 45, 1, 2, 0); ModelHistory_setModifiedDate(history, date); Date_free(date); fail_unless(ModelHistory_isSetModifiedDate(history) == 1); Date_t * newdate = ModelHistory_getModifiedDate(history); fail_unless(Date_getYear(newdate) == 2005); fail_unless(Date_getMonth(newdate) == 12); fail_unless(Date_getDay(newdate) == 30); fail_unless(Date_getHour(newdate) == 12); fail_unless(Date_getMinute(newdate) == 15); fail_unless(Date_getSecond(newdate) == 45); fail_unless(Date_getSignOffset(newdate) == 1); fail_unless(Date_getHoursOffset(newdate) == 2); fail_unless(Date_getMinutesOffset(newdate) == 0); ModelHistory_free(history); }
END_TEST START_TEST (test_Date_getDateAsString) { const char * dd = "2005-02-02T14:56:11Z"; Date_t * date = Date_createFromString(dd); fail_unless(date != NULL); fail_unless(Date_getYear(date) == 2005); fail_unless(Date_getMonth(date) == 2); fail_unless(Date_getDay(date) == 2); fail_unless(Date_getHour(date) == 14); fail_unless(Date_getMinute(date) == 56); fail_unless(Date_getSecond(date) == 11); fail_unless(Date_getSignOffset(date) == 0); fail_unless(Date_getHoursOffset(date) == 0); fail_unless(Date_getMinutesOffset(date) == 0); Date_setYear(date, 2012); Date_setMonth(date, 3); Date_setDay(date, 28); Date_setHour(date, 23); Date_setMinute(date, 4); Date_setSecond(date, 32); Date_setSignOffset(date, 1); Date_setHoursOffset(date, 2); Date_setMinutesOffset(date, 32); fail_unless(!strcmp(Date_getDateAsString(date), "2012-03-28T23:04:32+02:32")); Date_free(date); }
END_TEST START_TEST (test_Date_setDateAsString) { Date_t * date = Date_createFromValues(2007, 10, 23, 14, 15, 16, 1, 3, 0); fail_unless(date != NULL); int i = Date_setDateAsString(date, "20081-12-30T12:15:45+02:00"); fail_unless( i == LIBSBML_INVALID_ATTRIBUTE_VALUE ); fail_unless(!strcmp(Date_getDateAsString(date), "2007-10-23T14:15:16+03:00")); i = Date_setDateAsString(date, "200-12-30T12:15:45+02:00"); fail_unless( i == LIBSBML_INVALID_ATTRIBUTE_VALUE ); fail_unless(!strcmp(Date_getDateAsString(date), "2007-10-23T14:15:16+03:00")); i = Date_setDateAsString(date, NULL); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless(!strcmp(Date_getDateAsString(date), "2000-01-01T00:00:00Z")); i = Date_setDateAsString(date, "2008-12-30T12:15:45+02:00"); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( Date_getYear(date) == 2008); fail_unless( Date_getMonth(date) == 12); fail_unless( Date_getDay(date) == 30); fail_unless( Date_getHour(date) == 12); fail_unless( Date_getMinute(date) == 15); fail_unless( Date_getSecond(date) == 45); fail_unless( Date_getSignOffset(date) == 1); fail_unless( Date_getHoursOffset(date) == 2); fail_unless( Date_getMinutesOffset(date) == 0); Date_free(date); }
LIBSBML_CPP_NAMESPACE_USE CK_CPPSTART #endif START_TEST (test_Date_create) { Date_t * date = Date_createFromValues(2005, 12, 30, 12, 15, 45, 1, 2, 0); fail_unless(date != NULL); fail_unless(Date_getYear(date) == 2005); fail_unless(Date_getMonth(date) == 12); fail_unless(Date_getDay(date) == 30); fail_unless(Date_getHour(date) == 12); fail_unless(Date_getMinute(date) == 15); fail_unless(Date_getSecond(date) == 45); fail_unless(Date_getSignOffset(date) == 1); fail_unless(Date_getHoursOffset(date) == 2); fail_unless(Date_getMinutesOffset(date) == 0); Date_free(date); }