[ROSAUTOTEST]
[reactos.git] / rostests / rosautotest / precomp.h
1 #ifndef _ROSAUTOTEST_H_
2 #define _ROSAUTOTEST_H_
3
4 /* General includes */
5 #include <iostream>
6 #include <memory>
7 #include <sstream>
8 #include <string>
9 #include <vector>
10 #include <iomanip>
11
12 using namespace std;
13
14 #define WIN32_NO_STATUS
15 #define _INC_WINDOWS
16 #define COM_NO_WINDOWS_H
17 #include <windef.h>
18 #include <winbase.h>
19 #include <winnls.h>
20 #include <reason.h>
21 #include <shlobj.h>
22 #include <wininet.h>
23 #include <winreg.h>
24
25 #include <ndk/rtlfuncs.h>
26 #include <reactos/buildno.h>
27
28 /* Class includes */
29 #include "auto_array_ptr.h"
30 #include "CConfiguration.h"
31 #include "CFatalException.h"
32 #include "CInvalidParameterException.h"
33 #include "CPipe.h"
34 #include "CProcess.h"
35 #include "CPipedProcess.h"
36 #include "CSimpleException.h"
37 #include "CTestInfo.h"
38 #include "CTest.h"
39 #include "CTestList.h"
40 #include "CJournaledTestList.h"
41 #include "CVirtualTestList.h"
42 #include "CWebService.h"
43 #include "CWineTest.h"
44
45 #include <rosautotestmsg.h>
46
47 /* Useful macros */
48 #define EXCEPTION(Message) throw CSimpleException(Message)
49 #define FATAL(Message) throw CFatalException(__FILE__, __LINE__, Message)
50 #define SSEXCEPTION throw CSimpleException(ss.str().c_str())
51
52 /* main.c */
53 extern CConfiguration Configuration;
54
55 /* misc.c */
56 VOID FreeLogs(VOID);
57 VOID InitLogs(VOID);
58 extern HANDLE hLog;
59
60 /* shutdown.c */
61 bool ShutdownSystem();
62
63 /* tools.c */
64 wstring AsciiToUnicode(const char* AsciiString);
65 wstring AsciiToUnicode(const string& AsciiString);
66 string EscapeString(const char* Input);
67 string EscapeString(const string& Input);
68 string GetINIValue(PCWCH AppName, PCWCH KeyName, PCWCH FileName);
69 bool IsNumber(const char* Input);
70 string StringOut(const string& String, bool forcePrint = true);
71 string UnicodeToAscii(PCWSTR UnicodeString);
72 string UnicodeToAscii(const wstring& UnicodeString);
73
74 #endif /* _ROSAUTOTEST_H_ */