[WS2_32_APITEST]
[reactos.git] / rostests / apitests / crt / _vscwprintf.c
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
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 ok(expected_ret == ret, "expected %i, got %i.\n", expected_ret, ret);
21 }
22
23 START_TEST(_vscwprintf)
24 {
25 /* Lesson of the day: don't mix wide and ansi char */
26 /* Lesson of the week: don't ignore the lesson of the day */
27 call_varargs(12, L"%hs world!", "hello");
28 call_varargs(12, L"%s world!", L"hello");
29 call_varargs(17, L"Jack ate %u pies", 100);
30 /* Do not test NULL argument. That is verified to SEGV on a */
31 /* release-build with VC10 and MS' msvcrt. */
32 }