Quick question: why todo_wine? Respectfully, Eryk Wieliczko
2010/12/23 Alexandre Julliard <[email protected]>: > Module: wine > Branch: master > Commit: b74ef16d99f3c2f7e4a0a7e453c71b6da2c70310 > URL: > http://source.winehq.org/git/wine.git/?a=commit;h=b74ef16d99f3c2f7e4a0a7e453c71b6da2c70310 > > Author: Eryk Wieliczko <[email protected]> > 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, ...) > > > >
