ReactOS 0.4.16-dev-1946-g52006dd
_sntprintf.h File Reference
#include <apitest.h>
#include <stdio.h>
#include <tchar.h>
#include <pseh/pseh2.h>
#include <ndk/mmfuncs.h>
#include <ndk/rtlfuncs.h>
Include dependency graph for _sntprintf.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define WIN32_NO_STATUS
 
#define _sntprintf   p_sntprintf
 
#define broken(x)   0
 

Functions

static BOOL Init (void)
 
 START_TEST (_sntprintf)
 

Variables

static PFN_sntprintf p_sntprintf
 

Macro Definition Documentation

◆ _sntprintf

#define _sntprintf   p_sntprintf

Definition at line 29 of file _sntprintf.h.

◆ broken

#define broken (   x)    0

Definition at line 35 of file _sntprintf.h.

◆ WIN32_NO_STATUS

#define WIN32_NO_STATUS

Definition at line 8 of file _sntprintf.h.

Function Documentation

◆ Init()

static BOOL Init ( void  )
static

Definition at line 20 of file _sntprintf.h.

21{
24 ok(p_sntprintf != NULL, "Failed to load %s from %s\n", str_sntprintf, TEST_DLL_NAME);
25 return (p_sntprintf != NULL);
26}
static PFN_sntprintf p_sntprintf
Definition: _sntprintf.h:18
#define ok(value,...)
Definition: atltest.h:57
#define NULL
Definition: types.h:112
#define GetProcAddress(x, y)
Definition: compat.h:753
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryA(LPCSTR lpLibFileName)
Definition: loader.c:111
int(__cdecl * PFN_sntprintf)(char *_Dest, size_t _Count, const char *_Format,...)
Definition: _snprintf.c:3
#define str_sntprintf
Definition: _snprintf.c:4
#define TEST_DLL_NAME
Definition: wsprintf.c:3
static PVOID hdll
Definition: shimdbg.c:126

Referenced by START_TEST().

◆ START_TEST()

START_TEST ( _sntprintf  )

Definition at line 37 of file _sntprintf.h.

38{
39 _TCHAR Buffer[128];
40 size_t BufferSize = sizeof(Buffer) / sizeof(Buffer[0]);
41 int Result;
42
43#ifndef TEST_STATIC_CRT
44 if (!Init())
45 {
46 skip("Skipping tests, because %s is not available\n", str_sntprintf);
47 return;
48 }
49#endif
50
51 StartSeh()
52 Result = _sntprintf(NULL, 0, _T("Hello"));
53#ifdef TEST_CRTDLL
54 ok_int(Result, -1);
55#else
56 ok_int(Result, 5);
57#endif
59
60 StartSeh()
61 Result = _sntprintf(NULL, 1, _T("Hello"));
63#if defined(TEST_CRTDLL)
65#elif defined(_UNICODE)
67#else
69#endif
70
71 StartSeh()
73 Result = _sntprintf(Buffer, BufferSize, _T("Hello"));
74 ok_int(Result, 5);
75 ok(Buffer[0] == _T('H'), "\n");
76 ok(Buffer[1] == _T('e'), "\n");
77 ok(Buffer[2] == _T('l'), "\n");
78 ok(Buffer[3] == _T('l'), "\n");
79 ok(Buffer[4] == _T('o'), "\n");
80 ok(Buffer[5] == _T('\0'), "\n");
81 ok(Buffer[6] == (_TCHAR)0x5555, "\n");
83
84 StartSeh()
86 Result = _sntprintf(Buffer, 5, _T("Hello"));
87 ok_int(Result, 5);
88 ok(Buffer[0] == _T('H'), "\n");
89 ok(Buffer[1] == _T('e'), "\n");
90 ok(Buffer[2] == _T('l'), "\n");
91 ok(Buffer[3] == _T('l'), "\n");
92 ok(Buffer[4] == _T('o'), "\n");
93 ok(Buffer[5] == (_TCHAR)0x5555, "\n");
95
96 StartSeh()
98 Result = _sntprintf(Buffer, 1, _T("Hello"));
99 ok_int(Result, -1);
100 ok(Buffer[0] == _T('H'), "\n");
101 ok(Buffer[1] == (_TCHAR)0x5555, "\n");
103
104 StartSeh()
106 Result = _sntprintf(Buffer, 0, _T("Hello"));
107 ok_int(Result, -1);
108 ok(Buffer[0] == (_TCHAR)0x5555, "\n");
110}
static BOOL Init(void)
Definition: _sntprintf.h:20
#define _sntprintf
Definition: _sntprintf.h:29
#define GetNTVersion()
Definition: apitest.h:17
#define StartSeh()
Definition: apitest.h:93
#define EndSeh(ExpectedStatus)
Definition: apitest.h:99
#define skip(...)
Definition: atltest.h:64
#define ok_int(expression, result)
Definition: atltest.h:134
r l[0]
Definition: byte_order.h:168
Definition: bufpool.h:45
#define FillMemory(BUF, SIZ, MASK)
Definition: strucsup.c:31
#define STATUS_ACCESS_VIOLATION
GLdouble n
Definition: glext.h:7729
char _TCHAR
Definition: tchar.h:1392
#define e
Definition: ke_i.h:82
#define H
#define _WIN32_WINNT_VISTA
Definition: sdkddkver.h:25
#define STATUS_SUCCESS
Definition: shellext.h:65
#define _T(x)
Definition: vfdio.h:22
_In_ WDFMEMORY _Out_opt_ size_t * BufferSize
Definition: wdfmemory.h:254
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
Definition: wsk.h:409
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList

Variable Documentation

◆ p_sntprintf

PFN_sntprintf p_sntprintf
static

Definition at line 18 of file _sntprintf.h.

Referenced by Init().