1 /*
2  * PROJECT:         ReactOS api tests
3  * LICENSE:         GPL - See COPYING in the top level directory
4  * PURPOSE:         Test for _vscprintf
5  */
6 
7 #include <apitest.h>
8 
9 #include <stdio.h>
10 #include <tchar.h>
11 #include <errno.h>
12 
call_varargs(int expected_ret,LPCWSTR formatString,...)13 static void call_varargs(int expected_ret, LPCWSTR formatString, ...)
14 {
15     va_list args;
16     int ret;
17     /* Test the basic functionality */
18     va_start(args, formatString);
19     ret = _vscwprintf(formatString, args);
20     va_end(args);
21     ok(expected_ret == ret, "expected %i, got %i.\n", expected_ret, ret);
22 }
23 
START_TEST(_vscwprintf)24 START_TEST(_vscwprintf)
25 {
26     /* Lesson of the day: don't mix wide and ansi char */
27     /* Lesson of the week: don't ignore the lesson of the day */
28     call_varargs(12, L"%hs world!", "hello");
29     call_varargs(12, L"%s world!", L"hello");
30     call_varargs(17, L"Jack ate %u pies", 100);
31     /* Do not test NULL argument. That is verified to SEGV on a */
32     /* release-build with VC10 and MS' msvcrt. */
33 }
34