https://git.reactos.org/?p=reactos.git;a=commitdiff;h=2eb96f0c40d4431b0d7d1de211494375302ec611

commit 2eb96f0c40d4431b0d7d1de211494375302ec611
Author:     Mark Jansen <[email protected]>
AuthorDate: Sun Jan 5 00:51:13 2020 +0100
Commit:     Mark Jansen <[email protected]>
CommitDate: Sat Feb 8 22:09:13 2020 +0100

    [ROSTESTS] Update test helpers to allow custom file/line info
---
 .../rostests/apitests/browseui/IACLCustomMRU.cpp   | 10 +++---
 .../apitests/ntdll/RtlNtPathNameToDosPathName.c    | 34 ++++++++++----------
 modules/rostests/apitests/user32/CreateWindowEx.c  |  3 +-
 sdk/include/reactos/wine/test.h                    | 36 +++++++++++++---------
 4 files changed, 46 insertions(+), 37 deletions(-)

diff --git a/modules/rostests/apitests/browseui/IACLCustomMRU.cpp 
b/modules/rostests/apitests/browseui/IACLCustomMRU.cpp
index 1f2025daca9..9cf5ef765d4 100644
--- a/modules/rostests/apitests/browseui/IACLCustomMRU.cpp
+++ b/modules/rostests/apitests/browseui/IACLCustomMRU.cpp
@@ -1,8 +1,8 @@
 /*
  * PROJECT:     ReactOS api tests
- * LICENSE:     GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
+ * LICENSE:     GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
  * PURPOSE:     Test for IACLCustomMRU objects
- * COPYRIGHT:   Copyright 2017 Mark Jansen ([email protected])
+ * COPYRIGHT:   Copyright 2017-2020 Mark Jansen ([email protected])
  */
 
 #define _UNICODE
@@ -22,7 +22,7 @@ ULONG DbgPrint(PCH Format,...);
 #include <strsafe.h>
 #include <initguid.h>
 
-#define ok_hex_(file, line, key, expression, result) \
+#define ok_hex2(file, line, key, expression, result) \
     do { \
         int _value = (expression); \
         ok_(file, line)(_value == (result), "Wrong value for '%s', expected: " 
#result " (0x%x), got: 0x%x for %c\n", \
@@ -84,7 +84,7 @@ static void verify_mru_(const char* file, int line, 
IACLCustomMRU* mru, PCWSTR M
         CStringW tmp;
         tmp += Key;
         LSTATUS Status = key.QueryStringValue(tmp, Value, &nChars);
-        ok_hex_(file, line, Key, Status, ERROR_SUCCESS);
+        ok_hex2(file, line, Key, Status, ERROR_SUCCESS);
         if (Status == ERROR_SUCCESS)
         {
             ok_(file, line)(!wcscmp(Value, Entry), "Expected value %c to be 
%S, was %S\n", (char)Key, Entry, Value);
@@ -98,7 +98,7 @@ static void verify_mru_(const char* file, int line, 
IACLCustomMRU* mru, PCWSTR M
         WCHAR Value[MAX_PATH];
         ULONG nChars = _countof(Value);
         LSTATUS Status = key.QueryStringValue(L"MRUList", Value, &nChars);
-        ok_hex_(file, line, Key, Status, ERROR_SUCCESS);
+        ok_hex2(file, line, Key, Status, ERROR_SUCCESS);
         if (Status == ERROR_SUCCESS)
         {
             ok_(file, line)(!wcscmp(Value, MRUString), "Expected MRUList to be 
%S, was %S\n", MRUString, Value);
diff --git a/modules/rostests/apitests/ntdll/RtlNtPathNameToDosPathName.c 
b/modules/rostests/apitests/ntdll/RtlNtPathNameToDosPathName.c
index 311dfd8d535..44309249dd5 100644
--- a/modules/rostests/apitests/ntdll/RtlNtPathNameToDosPathName.c
+++ b/modules/rostests/apitests/ntdll/RtlNtPathNameToDosPathName.c
@@ -1,15 +1,15 @@
 /*
- * PROJECT:         ReactOS api tests
- * LICENSE:         GPLv2+ - See COPYING in the top level directory
- * PURPOSE:         Test for RtlNtPathNameToDosPathName
- * PROGRAMMER:      Mark Jansen
+ * PROJECT:     ReactOS api tests
+ * LICENSE:     GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
+ * PURPOSE:     Test for RtlNtPathNameToDosPathName
+ * COPYRIGHT:   Copyright 2017-2020 Mark Jansen ([email protected])
  */
 
 #include "precomp.h"
 
 NTSTATUS (NTAPI *pRtlNtPathNameToDosPathName)(ULONG Flags, 
PRTL_UNICODE_STRING_BUFFER Path, PULONG Type, PULONG Unknown4);
 
-#define ok_hex_(expression, result) \
+#define ok_hex2(expression, result) \
     do { \
         int _value = (expression); \
         winetest_ok(_value == (result), "Wrong value for '%s', expected: " 
#result " (0x%x), got: 0x%x\n", \
@@ -17,14 +17,14 @@ NTSTATUS (NTAPI *pRtlNtPathNameToDosPathName)(ULONG Flags, 
PRTL_UNICODE_STRING_B
     } while (0)
 
 
-#define ok_ptr_(expression, result) \
+#define ok_ptr2(expression, result) \
     do { \
         void *_value = (expression); \
         winetest_ok(_value == (result), "Wrong value for '%s', expected: " 
#result " (%p), got: %p\n", \
            #expression, (void*)(result), _value); \
     } while (0)
 
-#define ok_wstr_(x, y) \
+#define ok_wstr2(x, y) \
     winetest_ok(wcscmp(x, y) == 0, "Wrong string. Expected '%S', got '%S'\n", 
y, x)
 
 
@@ -369,14 +369,14 @@ static void test_table(struct test_entry* Entry)
     RtlEnsureBufferSize(RTL_SKIP_BUFFER_COPY, &Buffer.ByteBuffer, 
Buffer.String.MaximumLength);
     memcpy(Buffer.ByteBuffer.Buffer, Buffer.String.Buffer, 
Buffer.String.MaximumLength);
 
-    ok_hex_(pRtlNtPathNameToDosPathName(0, &Buffer, &Type, NULL), 
STATUS_SUCCESS);
+    ok_hex2(pRtlNtPathNameToDosPathName(0, &Buffer, &Type, NULL), 
STATUS_SUCCESS);
 
-    ok_hex_(Type, Entry->Type);
-    ok_wstr_(Buffer.String.Buffer, Entry->OutputPath);
+    ok_hex2(Type, Entry->Type);
+    ok_wstr2(Buffer.String.Buffer, Entry->OutputPath);
     /* If there is no change in the path, the pointer is unchanged */
     if (!wcscmp(Entry->InputPath, Entry->OutputPath))
     {
-        ok_ptr_(Buffer.String.Buffer, Entry->InputPath);
+        ok_ptr2(Buffer.String.Buffer, Entry->InputPath);
     }
     else
     {
@@ -385,16 +385,16 @@ static void test_table(struct test_entry* Entry)
                     (PUCHAR)Buffer.String.Buffer <= 
(Buffer.ByteBuffer.StaticBuffer + Buffer.ByteBuffer.StaticSize),
                     "Expected Buffer to point inside StaticBuffer\n");
     }
-    ok_wstr_((const WCHAR *)Buffer.ByteBuffer.Buffer, Entry->OutputPath);
+    ok_wstr2((const WCHAR *)Buffer.ByteBuffer.Buffer, Entry->OutputPath);
 
-    ok_hex_(Buffer.MinimumStaticBufferForTerminalNul, 0);
+    ok_hex2(Buffer.MinimumStaticBufferForTerminalNul, 0);
 
     /* For none of our tests should we exceed the StaticBuffer size! */
-    ok_ptr_(Buffer.ByteBuffer.Buffer, Buffer.ByteBuffer.StaticBuffer);
-    ok_hex_(Buffer.ByteBuffer.Size, Buffer.ByteBuffer.StaticSize);
+    ok_ptr2(Buffer.ByteBuffer.Buffer, Buffer.ByteBuffer.StaticBuffer);
+    ok_hex2(Buffer.ByteBuffer.Size, Buffer.ByteBuffer.StaticSize);
 
-    ok_hex_(Buffer.ByteBuffer.ReservedForAllocatedSize, 0);
-    ok_ptr_(Buffer.ByteBuffer.ReservedForIMalloc, NULL);
+    ok_hex2(Buffer.ByteBuffer.ReservedForAllocatedSize, 0);
+    ok_ptr2(Buffer.ByteBuffer.ReservedForIMalloc, NULL);
 
     RtlFreeBuffer(&Buffer.ByteBuffer);
 }
diff --git a/modules/rostests/apitests/user32/CreateWindowEx.c 
b/modules/rostests/apitests/user32/CreateWindowEx.c
index 068dbc5208f..c048f903469 100644
--- a/modules/rostests/apitests/user32/CreateWindowEx.c
+++ b/modules/rostests/apitests/user32/CreateWindowEx.c
@@ -3,7 +3,7 @@
  * LICENSE:         LGPLv2.1+ - See COPYING.LIB in the top level directory
  * PURPOSE:         Test for CreateWindowEx
  * PROGRAMMERS:     Thomas Faber <[email protected]>
- *                  Mark Jansen
+ *                  Mark Jansen ([email protected])
  */
 
 #include "precomp.h"
@@ -94,6 +94,7 @@ DWORD g_ChildNcExpectExStyle = 0;
 DWORD g_ChildExpectStyle = 0;
 DWORD g_ChildExpectExStyle = 0;
 
+#undef ok_hex_
 #define ok_hex_(expression, result) \
     do { \
         int _value = (expression); \
diff --git a/sdk/include/reactos/wine/test.h b/sdk/include/reactos/wine/test.h
index 4da38a4533a..d3e0c76d8ff 100644
--- a/sdk/include/reactos/wine/test.h
+++ b/sdk/include/reactos/wine/test.h
@@ -821,47 +821,55 @@ int main( int argc, char **argv )
 
 // Some helpful definitions
 
-#define ok_hex(expression, result) \
+#define ok_hex_(file, line, expression, result) \
     do { \
         int _value = (expression); \
-        ok(_value == (result), "Wrong value for '%s', expected: " #result " 
(0x%x), got: 0x%x\n", \
+        ok_(file, line)(_value == (result), "Wrong value for '%s', expected: " 
#result " (0x%x), got: 0x%x\n", \
            #expression, (int)(result), _value); \
     } while (0)
+#define ok_hex(expression, result)      ok_hex_(__FILE__, __LINE__, 
expression, result)
 
-#define ok_dec(expression, result) \
+#define ok_dec_(file, line, expression, result) \
     do { \
         int _value = (expression); \
-        ok(_value == (result), "Wrong value for '%s', expected: " #result " 
(%d), got: %d\n", \
+        ok_(file, line)(_value == (result), "Wrong value for '%s', expected: " 
#result " (%d), got: %d\n", \
            #expression, (int)(result), _value); \
     } while (0)
+#define ok_dec(expression, result)      ok_dec_(__FILE__, __LINE__, 
expression, result)
 
-#define ok_ptr(expression, result) \
+#define ok_ptr_(file, line, expression, result) \
     do { \
         void *_value = (expression); \
-        ok(_value == (result), "Wrong value for '%s', expected: " #result " 
(%p), got: %p\n", \
+        ok_(file, line)(_value == (result), "Wrong value for '%s', expected: " 
#result " (%p), got: %p\n", \
            #expression, (void*)(result), _value); \
     } while (0)
+#define ok_ptr(expression, result)      ok_ptr_(__FILE__, __LINE__, 
expression, result)
 
-#define ok_size_t(expression, result) \
+#define ok_size_t_(file, line, expression, result) \
     do { \
         size_t _value = (expression); \
-        ok(_value == (result), "Wrong value for '%s', expected: " #result " 
(%Ix), got: %Ix\n", \
+        ok_(file, line)(_value == (result), "Wrong value for '%s', expected: " 
#result " (%Ix), got: %Ix\n", \
            #expression, (size_t)(result), _value); \
     } while (0)
+#define ok_size_t(expression, result)   ok_size_t_(__FILE__, __LINE__, 
expression, result)
 
 #define ok_char(expression, result) ok_hex(expression, result)
 
-#define ok_err(error) \
-    ok(GetLastError() == (error), "Wrong last error. Expected " #error ", got 
0x%lx\n", GetLastError())
+#define ok_err_(file, line, error) \
+    ok_(file, line)(GetLastError() == (error), "Wrong last error. Expected " 
#error ", got 0x%lx\n", GetLastError())
+#define ok_err(error)      ok_err_(__FILE__, __LINE__, error)
 
-#define ok_str(x, y) \
-    ok(strcmp(x, y) == 0, "Wrong string. Expected '%s', got '%s'\n", y, x)
+#define ok_str_(file, line, x, y) \
+    ok_(file, line)(strcmp(x, y) == 0, "Wrong string. Expected '%s', got 
'%s'\n", y, x)
+#define ok_str(x, y)      ok_str_(__FILE__, __LINE__, x, y)
 
-#define ok_wstr(x, y) \
-    ok(wcscmp(x, y) == 0, "Wrong string. Expected '%S', got '%S'\n", y, x)
+#define ok_wstr_(file, line, x, y) \
+    ok_(file, line)(wcscmp(x, y) == 0, "Wrong string. Expected '%S', got 
'%S'\n", y, x)
+#define ok_wstr(x, y)     ok_wstr_(__FILE__, __LINE__, x, y)
 
 #define ok_long(expression, result) ok_hex(expression, result)
 #define ok_int(expression, result) ok_dec(expression, result)
+#define ok_int_(file, line, expression, result) ok_dec_(file, line, 
expression, result)
 #define ok_ntstatus(status, expected) ok_hex(status, expected)
 #define ok_hdl ok_ptr
 

Reply via email to