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