2 * PROJECT: ReactOS api tests
3 * LICENSE: GPL - See COPYING in the top level directory
4 * PURPOSE: Test for AddFontResource
5 * PROGRAMMERS: Timo Kreuzer
14 void Test_AddFontResourceA()
16 CHAR szFileNameA
[MAX_PATH
];
17 CHAR szFileNameFont1A
[MAX_PATH
];
18 CHAR szFileNameFont2A
[MAX_PATH
];
21 GetCurrentDirectoryA(MAX_PATH
,szFileNameA
);
23 memcpy(szFileNameFont1A
,szFileNameA
,MAX_PATH
);
24 strcat(szFileNameFont1A
, "\\testdata\\test.ttf");
26 memcpy(szFileNameFont2A
,szFileNameA
,MAX_PATH
);
27 strcat(szFileNameFont2A
, "\\testdata\\test.otf");
29 RtlZeroMemory(szFileNameA
,MAX_PATH
);
32 * Start testing Ansi version
36 /* Testing NULL pointer */
37 SetLastError(ERROR_SUCCESS
);
38 result
= AddFontResourceA(NULL
);
39 ok(result
== 0, "AddFontResourceA succeeded, result=%d\n", result
);
40 ok(GetLastError() == ERROR_SUCCESS
, "GetLastError()=%ld\n", GetLastError());
42 /* Testing -1 pointer */
43 SetLastError(ERROR_SUCCESS
);
44 result
= AddFontResourceA((CHAR
*)-1);
45 ok(result
== 0, "AddFontResourceA succeeded, result=%d\n", result
);
46 ok(GetLastError() == ERROR_SUCCESS
, "GetLastError()=%ld\n", GetLastError());
48 /* Testing address 1 pointer */
49 SetLastError(ERROR_SUCCESS
);
50 result
= AddFontResourceA((CHAR
*)1);
51 ok(result
== 0, "AddFontResourceA succeeded, result=%d\n", result
);
52 ok(GetLastError() == ERROR_SUCCESS
, "GetLastError()=%ld\n", GetLastError());
54 /* Testing address empty string */
55 SetLastError(ERROR_SUCCESS
);
56 result
= AddFontResourceA("");
57 ok(result
== 0, "AddFontResourceA succeeded, result=%d\n", result
);
58 ok(GetLastError() == ERROR_INVALID_PARAMETER
, "GetLastError()=%ld\n", GetLastError());
60 /* Testing one ttf font */
61 SetLastError(ERROR_SUCCESS
);
62 result
= AddFontResourceA(szFileNameFont1A
);
63 ok(result
== 1, "AddFontResourceA(\"%s\") failed, result=%d\n", szFileNameFont1A
, result
);
64 ok(GetLastError() == ERROR_SUCCESS
, "GetLastError()=%ld\n", GetLastError());
66 /* Testing one otf font */
67 SetLastError(ERROR_SUCCESS
);
68 result
= AddFontResourceA(szFileNameFont2A
);
69 ok(result
== 1, "AddFontResourceA failed, result=%d\n", result
);
70 ok(GetLastError() == ERROR_SUCCESS
, "GetLastError()=%ld\n", GetLastError());
72 /* Testing two fonts */
73 SetLastError(ERROR_SUCCESS
);
74 sprintf(szFileNameA
,"%s|%s",szFileNameFont1A
, szFileNameFont2A
);
75 result
= AddFontResourceA(szFileNameA
);
76 ok(result
== 0, "AddFontResourceA succeeded, result=%d\n", result
);
77 ok(GetLastError() == ERROR_SUCCESS
, "GetLastError()=%ld\n", GetLastError());
79 SetLastError(ERROR_SUCCESS
);
80 sprintf(szFileNameA
,"%s |%s",szFileNameFont1A
, szFileNameFont2A
);
81 result
= AddFontResourceA(szFileNameA
);
82 ok(result
== 0, "AddFontResourceA succeeded, result=%d\n", result
);
83 ok(GetLastError() == ERROR_SUCCESS
, "GetLastError()=%ld\n", GetLastError());
85 SetLastError(ERROR_SUCCESS
);
86 sprintf(szFileNameA
,"%s | %s",szFileNameFont1A
, szFileNameFont2A
);
87 result
= AddFontResourceA(szFileNameA
);
88 ok(result
== 0, "AddFontResourceA succeeded, result=%d\n", result
);
89 ok(GetLastError() == ERROR_FILE_NOT_FOUND
, "GetLastError()=%ld\n", GetLastError());
92 START_TEST(AddFontResource
)
94 Test_AddFontResourceA();