reactos/kmtests/rtl/RtlAvlTree.c
Thomas Faber c588b3e5fc [KMTESTS]
- add RtlSplayTree test. Patch by arty (hacks by me ;])
- add RtlAvlTree test using the same code
- add kmtest_drivers and kmtest_all build targets

svn path=/branches/GSoC_2011/KMTestSuite/; revision=53046
2011-08-03 11:21:35 +00:00

35 lines
1.2 KiB
C

/* HACK: broken ntddk.h */
#ifdef KMT_KERNEL_MODE
typedef struct _RTL_SPLAY_LINKS {
struct _RTL_SPLAY_LINKS *Parent;
struct _RTL_SPLAY_LINKS *LeftChild;
struct _RTL_SPLAY_LINKS *RightChild;
} RTL_SPLAY_LINKS, *PRTL_SPLAY_LINKS;
#endif
#define RTL_USE_AVL_TABLES
#define KMT_EMULATE_KERNEL
#include <kmt_test.h>
#if defined KMT_USER_MODE
/* HACK: missing in rtltypes.h */
#undef RTL_GENERIC_TABLE
#undef PRTL_GENERIC_TABLE
#define RTL_GENERIC_TABLE RTL_AVL_TABLE
#define PRTL_GENERIC_TABLE PRTL_AVL_TABLE
/* HACK: missing in rtlfuncs.h */
#define RtlInitializeGenericTable RtlInitializeGenericTableAvl
#define RtlInsertElementGenericTable RtlInsertElementGenericTableAvl
#define RtlDeleteElementGenericTable RtlDeleteElementGenericTableAvl
#define RtlLookupElementGenericTable RtlLookupElementGenericTableAvl
#define RtlEnumerateGenericTable RtlEnumerateGenericTableAvl
#define RtlGetElementGenericTable RtlGetElementGenericTableAvl
#define RtlNumberGenericTableElements RtlNumberGenericTableElementsAvl
#endif
/* this is a little hacky, but better than duplicating the code (for now) */
#define Test_RtlSplayTree Test_RtlAvlTree
#include "RtlSplayTree.c"