2012-07-21 20:00:56 +00:00
|
|
|
/*
|
|
|
|
* PROJECT: ReactOS api tests
|
|
|
|
* LICENSE: GPL - See COPYING in the top level directory
|
|
|
|
* PURPOSE: Test for _vscprintf
|
|
|
|
*/
|
|
|
|
|
2013-09-22 17:52:42 +00:00
|
|
|
#include <apitest.h>
|
|
|
|
|
2012-07-21 20:00:56 +00:00
|
|
|
#include <stdio.h>
|
|
|
|
#include <tchar.h>
|
2012-07-21 20:15:12 +00:00
|
|
|
#include <errno.h>
|
2012-07-21 20:00:56 +00:00
|
|
|
|
|
|
|
static void call_varargs(int expected_ret, LPCSTR formatString, ...)
|
|
|
|
{
|
|
|
|
va_list args;
|
|
|
|
int ret;
|
|
|
|
/* Test the basic functionality */
|
|
|
|
va_start(args, formatString);
|
|
|
|
ret = _vscprintf(formatString, args);
|
|
|
|
ok(expected_ret == ret, "Test failed: expected %i, got %i.\n", expected_ret, ret);
|
|
|
|
}
|
|
|
|
|
|
|
|
START_TEST(_vscprintf)
|
|
|
|
{
|
|
|
|
/* Here you can mix wide and ANSI strings */
|
|
|
|
call_varargs(12, "%S world!", L"hello");
|
|
|
|
call_varargs(12, "%s world!", "hello");
|
|
|
|
call_varargs(11, "%u cookies", 100);
|
2012-08-31 14:16:17 +00:00
|
|
|
/* Do not test NULL argument. That is verified to SEGV on a */
|
|
|
|
/* release-build with VC10 and MS' msvcrt. */
|
2012-07-21 20:00:56 +00:00
|
|
|
}
|