Eryk Wieliczko : msvcrt/tests: Add _fcvt_s tests.
Eryk Wieliczko
ewdevel at gmail.com
Fri Dec 24 14:23:25 CST 2010
Quick question: why todo_wine?
Respectfully,
Eryk Wieliczko
2010/12/23 Alexandre Julliard <julliard at winehq.org>:
> Module: wine
> Branch: master
> Commit: b74ef16d99f3c2f7e4a0a7e453c71b6da2c70310
> URL: http://source.winehq.org/git/wine.git/?a=commit;h=b74ef16d99f3c2f7e4a0a7e453c71b6da2c70310
>
> Author: Eryk Wieliczko <ewdevel at gmail.com>
> Date: Wed Dec 22 23:10:56 2010 +0100
>
> msvcrt/tests: Add _fcvt_s tests.
>
> ---
>
> dlls/msvcrt/tests/printf.c | 29 +++++++++++++++++++++++++++--
> 1 files changed, 27 insertions(+), 2 deletions(-)
>
> diff --git a/dlls/msvcrt/tests/printf.c b/dlls/msvcrt/tests/printf.c
> index 87efd16..d32ef73 100644
> --- a/dlls/msvcrt/tests/printf.c
> +++ b/dlls/msvcrt/tests/printf.c
> @@ -40,6 +40,8 @@ static int (__cdecl *p__vsnwprintf_s)(wchar_t *str, size_t sizeOfBuffer,
> __ms_va_list valist);
> static int (__cdecl *p__ecvt_s)(char *buffer, size_t length, double number,
> int ndigits, int *decpt, int *sign);
> +static int (__cdecl *p__fcvt_s)(char *buffer, size_t length, double number,
> + int ndigits, int *decpt, int *sign);
>
> static void init( void )
> {
> @@ -49,6 +51,7 @@ static void init( void )
> p__vscwprintf = (void *)GetProcAddress(hmod, "_vscwprintf");
> p__vsnwprintf_s = (void *)GetProcAddress(hmod, "_vsnwprintf_s");
> p__ecvt_s = (void *)GetProcAddress(hmod, "_ecvt_s");
> + p__fcvt_s = (void *)GetProcAddress(hmod, "_fcvt_s");
> }
>
> static void test_sprintf( void )
> @@ -799,7 +802,7 @@ static void test_xcvt(void)
> "_fcvt() decimal point wrong, got %d expected %d\n", decpt,
> test_cvt_testcases[i].expdecpt_f);
> ok( sign == test_cvt_testcases[i].expsign,
> - "_ecvt() sign wrong, got %d expected %d\n", sign,
> + "_fcvt() sign wrong, got %d expected %d\n", sign,
> test_cvt_testcases[i].expsign);
> }
>
> @@ -823,7 +826,29 @@ static void test_xcvt(void)
> free(str);
> }
> else
> - win_skip("_ecvt_s not available\n");
> + win_skip("_ecvt_s not available\n");
> +
> + if (p__fcvt_s)
> + {
> + str = malloc(1024);
> + for( i = 0; strcmp( test_cvt_testcases[i].expstr_e, "END"); i++){
> + decpt = sign = 100;
> + err = p__fcvt_s(str, 1024, test_cvt_testcases[i].value, test_cvt_testcases[i].nrdigits, &decpt, &sign);
> + ok(err == 0, "_fcvt_s() failed with error code %d", err);
> + ok( 0 == strncmp( str, test_cvt_testcases[i].expstr_f, 15),
> + "_fcvt_s() bad return, got \n'%s' expected \n'%s'\n", str,
> + test_cvt_testcases[i].expstr_e);
> + ok( decpt == test_cvt_testcases[i].expdecpt_f,
> + "_fcvt_s() decimal point wrong, got %d expected %d\n", decpt,
> + test_cvt_testcases[i].expdecpt_e);
> + ok( sign == test_cvt_testcases[i].expsign,
> + "_fcvt_s() sign wrong, got %d expected %d\n", sign,
> + test_cvt_testcases[i].expsign);
> + }
> + free(str);
> + }
> + else
> + todo_wine win_skip("_fcvt_s not available\n");
> }
>
> static int __cdecl _vsnwprintf_wrapper(wchar_t *str, size_t len, const wchar_t *format, ...)
>
>
>
>
More information about the wine-devel
mailing list