END_TEST START_TEST (test_Date_setOffsetSign) { Date_t * date = Date_createFromValues(2005, 12, 30, 12, 15, 45, 1, 2, 0); fail_unless(date != NULL); int i = Date_setSignOffset(date, 2); fail_unless( i == LIBSBML_INVALID_ATTRIBUTE_VALUE ); fail_unless( Date_getSignOffset(date) == 0); i = Date_setSignOffset(date, -4); fail_unless( i == LIBSBML_INVALID_ATTRIBUTE_VALUE ); fail_unless( Date_getSignOffset(date) == 0); i = Date_setSignOffset(date, 0); fail_unless( i == LIBSBML_OPERATION_SUCCESS ); fail_unless( Date_getSignOffset(date) == 0); fail_unless(!strcmp(Date_getDateAsString(date), "2005-12-30T12:15:45-02:00")); Date_free(date); }
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_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); }