i18n_field_position_h hFieldPos = NULL;
i18n_date_interval_h hDateInterval = NULL;
- i18n_udate nFromDate = 1000000.0;
+ i18n_udate nFromDate = 1000000.0;
i18n_udate nToDate = 1500000.0;
const char *nResult = "Date: Jan 1, 1970";
+ const char *pszDefaultLocale = "en_US";
+ i18n_date_interval_fmt_h hDateIntervalFmt = NULL;
+
int nRetVal = -1;
nRetVal = i18n_date_interval_create(nFromDate, nToDate, &hDateInterval);
PRINT_RESULT_CLEANUP(I18N_ERROR_NONE, nRetVal, "i18n_field_position_create", BaseUtilsGetError(nRetVal),i18n_date_interval_destroy(hDateInterval));
CHECK_HANDLE_CLEANUP(hFieldPos, "i18n_field_position_create",i18n_date_interval_destroy(hDateInterval));
+ nRetVal = i18n_date_interval_fmt_create_from_locale(g_skeleton, pszDefaultLocale, &hDateIntervalFmt);
+ PRINT_RESULT_CLEANUP(I18N_ERROR_NONE, nRetVal, "i18n_date_interval_fmt_create_from_locale", BaseUtilsGetError(nRetVal), i18n_date_interval_destroy(hDateInterval); i18n_field_position_destroy(hFieldPos));
+ CHECK_HANDLE_CLEANUP(hDateIntervalFmt, "i18n_date_interval_fmt_create_from_locale", i18n_date_interval_destroy(hDateInterval); i18n_field_position_destroy(hFieldPos));
+
char *nAppendTo = malloc(sizeof(char) * BUFFER);
+ if (!nAppendTo)
+ {
+ i18n_date_interval_destroy(hDateInterval);
+ i18n_field_position_destroy(hFieldPos);
+ i18n_date_interval_fmt_destroy(hDateIntervalFmt);
+ FPRINTF("[Line : %d][%s] result and append value value didn't match, nAppendTo: %s, nResult: %s\\n", __LINE__, API_NAMESPACE, nAppendTo, nResult);
+ return 1;
+ }
snprintf(nAppendTo, BUFFER, "Date: ");
+
//Target API
- nRetVal = i18n_date_interval_fmt_format_with_date_interval(g_date_int_fmt, hDateInterval, &nAppendTo, hFieldPos);
- PRINT_RESULT_CLEANUP(I18N_ERROR_NONE, nRetVal, "i18n_date_interval_fmt_format_with_date_interval", BaseUtilsGetError(nRetVal), i18n_date_interval_destroy(hDateInterval); i18n_field_position_destroy(hFieldPos);FREE_MEMORY(nAppendTo));
+ nRetVal = i18n_date_interval_fmt_format_with_date_interval(hDateIntervalFmt, hDateInterval, &nAppendTo, hFieldPos);
+ PRINT_RESULT_CLEANUP(I18N_ERROR_NONE, nRetVal, "i18n_date_interval_fmt_format_with_date_interval", BaseUtilsGetError(nRetVal), i18n_date_interval_destroy(hDateInterval); i18n_field_position_destroy(hFieldPos); i18n_date_interval_fmt_destroy(hDateIntervalFmt); FREE_MEMORY(nAppendTo));
if ( strncmp(nAppendTo, nResult, nlength) != 0 )
{
FPRINTF("[Line : %d][%s] result and append value value didn't match, nAppendTo: %s, nResult: %s\\n", __LINE__, API_NAMESPACE, nAppendTo, nResult);
i18n_date_interval_destroy(hDateInterval);
i18n_field_position_destroy(hFieldPos);
+ i18n_date_interval_fmt_destroy(hDateIntervalFmt);
FREE_MEMORY(nAppendTo);
return 1;
}
PRINT_RESULT_NORETURN(I18N_ERROR_NONE, nRetVal, "i18n_date_interval_destroy", BaseUtilsGetError(nRetVal));
nRetVal = i18n_field_position_destroy(hFieldPos);
PRINT_RESULT_NORETURN(I18N_ERROR_NONE, nRetVal, "i18n_field_position_destroy", BaseUtilsGetError(nRetVal));
+ nRetVal = i18n_date_interval_fmt_destroy(hDateIntervalFmt);
+ PRINT_RESULT_NORETURN(I18N_ERROR_NONE, nRetVal, "i18n_date_interval_fmt_destroy", BaseUtilsGetError(nRetVal));
+
return 0;
}
i18n_field_position_h hFieldPos = NULL;
i18n_uchar *hDefaultTzid = NULL;
int nLengthDefaultTimeZone = 0;
- i18n_ucalendar_h nFromUcalender = NULL;
+ i18n_ucalendar_h nFromUcalender = NULL;
i18n_ucalendar_h nToUcalender = NULL;
const char *pszDefaultLocale = "en_US";
const char *nResult = "Date: Oct 11, 2000 \u2013 Oct 11, 2014";
+ i18n_date_interval_fmt_h hDateIntervalFmt = NULL;
+
int nRetVal = -1;
nRetVal = i18n_ucalendar_create(hDefaultTzid, nLengthDefaultTimeZone, pszDefaultLocale, I18N_UCALENDAR_DEFAULT, &nFromUcalender);
PRINT_RESULT_CLEANUP(I18N_ERROR_NONE, nRetVal, "i18n_field_position_create", BaseUtilsGetError(nRetVal),i18n_ucalendar_destroy(nFromUcalender); i18n_ucalendar_destroy(nToUcalender));
CHECK_HANDLE_CLEANUP(hFieldPos, "i18n_field_position_create",i18n_ucalendar_destroy(nFromUcalender); i18n_ucalendar_destroy(nToUcalender));
+ nRetVal = i18n_date_interval_fmt_create_from_locale(g_skeleton, pszDefaultLocale, &hDateIntervalFmt);
+ PRINT_RESULT_CLEANUP(I18N_ERROR_NONE, nRetVal, "i18n_date_interval_fmt_create_from_locale", BaseUtilsGetError(nRetVal), i18n_ucalendar_destroy(nFromUcalender); i18n_ucalendar_destroy(nToUcalender); i18n_field_position_destroy(hFieldPos));
+ CHECK_HANDLE_CLEANUP(hDateIntervalFmt, "i18n_date_interval_fmt_create_from_locale", i18n_ucalendar_destroy(nFromUcalender); i18n_ucalendar_destroy(nToUcalender); i18n_field_position_destroy(hFieldPos));
+
char *nAppendTo = malloc(sizeof(char) * BUFFER);
+ if (!nAppendTo)
+ {
+ i18n_ucalendar_destroy(nFromUcalender);
+ i18n_ucalendar_destroy(nToUcalender);
+ i18n_field_position_destroy(hFieldPos);
+ i18n_date_interval_fmt_destroy(hDateIntervalFmt);
+ FPRINTF("[Line : %d][%s] result and append value value didn't match, nAppendTo: %s, nResult: %s\\n", __LINE__, API_NAMESPACE, nAppendTo, nResult);
+ return 1;
+ }
snprintf(nAppendTo, BUFFER, "Date: ");
+
//Target API
- nRetVal = i18n_date_interval_fmt_format_with_calendar(g_date_int_fmt, nFromUcalender, nToUcalender, &nAppendTo, hFieldPos);
- PRINT_RESULT_CLEANUP(I18N_ERROR_NONE, nRetVal, "i18n_date_interval_fmt_format_with_calendar", BaseUtilsGetError(nRetVal), i18n_ucalendar_destroy(nFromUcalender); i18n_ucalendar_destroy(nToUcalender); i18n_field_position_destroy(hFieldPos);FREE_MEMORY(nAppendTo));
+ nRetVal = i18n_date_interval_fmt_format_with_calendar(hDateIntervalFmt, nFromUcalender, nToUcalender, &nAppendTo, hFieldPos);
+ PRINT_RESULT_CLEANUP(I18N_ERROR_NONE, nRetVal, "i18n_date_interval_fmt_format_with_calendar", BaseUtilsGetError(nRetVal), i18n_ucalendar_destroy(nFromUcalender); i18n_ucalendar_destroy(nToUcalender); i18n_field_position_destroy(hFieldPos); i18n_date_interval_fmt_destroy(hDateIntervalFmt); FREE_MEMORY(nAppendTo));
if ( strncmp(nAppendTo, nResult, nlength) != 0 )
{
FPRINTF("[Line : %d][%s] result and append value value didn't match, nAppendTo: %s, nResult: %s\\n", __LINE__, API_NAMESPACE, nAppendTo, nResult);
i18n_ucalendar_destroy(nFromUcalender);
i18n_ucalendar_destroy(nToUcalender);
i18n_field_position_destroy(hFieldPos);
+ i18n_date_interval_fmt_destroy(hDateIntervalFmt);
FREE_MEMORY(nAppendTo);
return 1;
}
PRINT_RESULT_NORETURN(I18N_ERROR_NONE, nRetVal, "i18n_ucalendar_destroy", BaseUtilsGetError(nRetVal));
nRetVal = i18n_field_position_destroy(hFieldPos);
PRINT_RESULT_NORETURN(I18N_ERROR_NONE, nRetVal, "i18n_field_position_destroy", BaseUtilsGetError(nRetVal));
+ nRetVal = i18n_date_interval_fmt_destroy(hDateIntervalFmt);
+ PRINT_RESULT_NORETURN(I18N_ERROR_NONE, nRetVal, "i18n_date_interval_fmt_destroy", BaseUtilsGetError(nRetVal));
+
return 0;
}