[C++]
[reactos.git] / rostests / rosautotest / precomp.h
1 /* General includes */
2 #include <iostream>
3 #include <memory>
4 #include <sstream>
5 #include <vector>
6 #include <iomanip>
7
8 using namespace std;
9
10 #define WIN32_NO_STATUS
11 #define _INC_WINDOWS
12 #define COM_NO_WINDOWS_H
13 #include <windef.h>
14 #include <winbase.h>
15 #include <winnls.h>
16 #include <reason.h>
17 #include <shlobj.h>
18 #include <wininet.h>
19
20 #include <ndk/rtlfuncs.h>
21 #include <reactos/buildno.h>
22
23 /* Class includes */
24 #include "auto_array_ptr.h"
25 #include "CConfiguration.h"
26 #include "CFatalException.h"
27 #include "CInvalidParameterException.h"
28 #include "CProcess.h"
29 #include "CSimpleException.h"
30 #include "CTestInfo.h"
31 #include "CTest.h"
32 #include "CTestList.h"
33 #include "CJournaledTestList.h"
34 #include "CVirtualTestList.h"
35 #include "CWebService.h"
36 #include "CWineTest.h"
37
38 /* Useful macros */
39 #define EXCEPTION(Message) throw CSimpleException(Message)
40 #define FATAL(Message) throw CFatalException(__FILE__, __LINE__, Message)
41 #define SSEXCEPTION throw CSimpleException(ss.str().c_str())
42
43 /* main.c */
44 extern CConfiguration Configuration;
45
46 /* shutdown.c */
47 bool ShutdownSystem();
48
49 /* tools.c */
50 wstring AsciiToUnicode(const char* AsciiString);
51 wstring AsciiToUnicode(const string& AsciiString);
52 string EscapeString(const char* Input);
53 string EscapeString(const string& Input);
54 string GetINIValue(PCWCH AppName, PCWCH KeyName, PCWCH FileName);
55 bool IsNumber(const char* Input);
56 string StringOut(const string& String, bool forcePrint = true);
57 string UnicodeToAscii(PCWSTR UnicodeString);
58 string UnicodeToAscii(const wstring& UnicodeString);
59
60
61 /* Lazy HACK to allow compiling/debugging with MSVC while we lack support
62 for linking against "debugsup_ntdll" in MSVC */
63 #ifdef _MSC_VER
64 #define DbgPrint
65 #endif